/* October web edition: restrained photo-led layout, shared app brand. */
:root{--paper:#fcfbf8;--ink:#292724;--accent:#af432f;--line:#e7e3dc}
.hero h1>span{white-space:nowrap}
body{background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Apple SD Gothic Neo","Malgun Gothic",sans-serif}
.container{width:min(1200px,calc(100% - 80px));max-width:1200px}
.beta-notice{padding:10px 24px;background:#f0e7df;color:#754334;text-align:center;font-size:13px;line-height:1.6;word-break:keep-all}
.site-header{background:rgba(252,251,248,.97);border-bottom:1px solid var(--line);box-shadow:none}
.header-inner{min-height:88px}.brand{color:var(--accent)}.brand-english{font-size:10px;letter-spacing:1.7px}
.site-navigation{gap:28px}.site-navigation>a{font-size:14px}.button{border-radius:10px;background:var(--accent);border-color:var(--accent);font-size:15px;min-height:52px;box-shadow:none}
.button-outline{background:transparent;color:var(--accent)}.button-small{min-height:44px}.text-link{font-size:14px;min-height:44px}
.hero{display:grid;grid-template-columns:1fr 1.08fr;gap:70px;align-items:center;padding-block:76px 82px;min-height:0}
.hero-copy{padding:0}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:600;color:var(--accent)}.small-star{display:none}
.hero h1{font-size:clamp(38px,4.2vw,58px);letter-spacing:-2.8px;line-height:1.22;margin:25px 0}.hero h1 span{color:var(--accent)}
.hero-description{font-size:16px;line-height:1.85;color:#6b6761}.hero-actions{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:32px}.hero-note{font-size:13px;margin-top:22px;color:#77716a}
.hero-gallery{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr auto;gap:16px;height:530px;min-height:0;margin:0;position:relative}
.hero-backdrop{display:none}.hero-photo{position:relative;inset:auto;width:auto;height:auto;margin:0;padding:0;border:0;border-radius:12px;box-shadow:none;transform:none;overflow:hidden;background:#eee8df}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover}.hero-photo-main{grid-column:1;grid-row:1/3;transform:none}.hero-photo-flower{grid-column:2;grid-row:1;transform:none}.hero-photo-birthday{grid-column:2;grid-row:2}
.hero-photo figcaption{position:absolute;inset:auto 0 0;padding:30px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.44));color:white;font-size:12px;line-height:1.6;display:block}.hero-photo-main figcaption span:last-child{display:none}
.image-disclaimer{position:static;grid-column:1/-1;margin:0;text-align:right;font-size:11px;color:#77716a;transform:none}
.value-strip{background:transparent;border-block:1px solid var(--line)}.value-strip-inner{min-height:72px;color:#746d64;font-size:14px}
.section{padding-block:100px}.section h2,.together-copy h2,.how-section h2,.album-section h2,.closing-section h2{font-size:36px;line-height:1.4;letter-spacing:-1.5px}.section-description{font-size:15px;line-height:1.8;color:#77716a}
.section-heading{align-items:flex-end;margin-bottom:36px}.template-grid{gap:22px}.template-image{border-radius:10px;aspect-ratio:3/4}.template-image img{height:100%;object-fit:cover}.image-tag{border-radius:4px;font-size:10px;background:rgba(252,251,248,.92);padding:6px 9px}
.template-caption{padding-top:17px}.template-caption h3{font-size:16px;letter-spacing:-.5px}.template-caption p{font-size:13px}.section-footnote{font-size:12px;line-height:1.8;margin-top:25px}
.together-section{background:#f1eee7}.together-inner{padding-block:72px;gap:100px}.together-art{transform:none;box-shadow:none;background:none;padding:0;border-radius:12px;overflow:hidden;max-width:420px}.together-art img{border-radius:0}.together-art>p,.photo-corner{display:none}.together-copy>p:not(.eyebrow):not(.subtle-note){font-size:15px;line-height:1.9}.subtle-note{font-size:12px}
.goods-grid{gap:28px}.goods-stage{border-radius:12px}.goods-caption h3{font-size:18px}.goods-caption p,.goods-bottom p{font-size:14px;line-height:1.8}.availability-badge{font-size:12px;background:#f1e8df;border-radius:5px}.goods-type{font-size:11px}
.album-section{border-top:1px solid var(--line);padding-block:80px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.album-section h2{margin:18px 0}.album-features{display:flex;flex-direction:column;justify-content:center}.album-features article{display:flex;gap:24px;padding:25px 0;border-bottom:1px solid var(--line)}.album-features article>span{font-size:12px;color:var(--accent);padding-top:5px}.album-features h3{margin:0 0 7px;font-size:17px;letter-spacing:-.5px}.album-features p{margin:0;color:#77716a;font-size:14px;line-height:1.8}
.how-section{padding-block:80px;background:#f1eee7}.step-grid{gap:36px}.step-grid>li{border-top:1px solid #d8d2c7;padding-top:24px;background:none;border-radius:0;box-shadow:none}.step-number{background:none;padding:0;width:auto;height:auto;color:var(--accent);font-size:14px}.step-grid h3{font-size:18px}.step-grid p{font-size:14px;line-height:1.9}
.faq-section{gap:90px}.faq-list summary{font-size:16px;padding-block:23px}.faq-list details>p{font-size:14px;line-height:1.9}.closing-section{background:#eee4da;padding-block:65px}.closing-inner{gap:30px}.closing-section h2{margin-bottom:0}
.site-footer{background:var(--paper)}.footer-top{gap:24px}.footer-top>p,.footer-links{font-size:13px}.footer-bottom,.business-information{font-size:12px;line-height:1.8}.footer-links a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1000px){.container{width:calc(100% - 48px)}.hero{gap:32px}.hero-gallery{height:460px}.hero h1{font-size:42px}.site-navigation{gap:18px}.together-inner{gap:55px}.faq-section{gap:45px}.hero-actions .text-link{font-size:13px}}
@media(max-width:800px){.header-inner{min-height:76px}.site-navigation{background:var(--paper);padding:24px}.site-navigation>a{font-size:15px}.hero{grid-template-columns:1fr;padding-block:42px 38px;gap:32px}.hero-copy{max-width:none}.hero h1{font-size:43px}.hero h1 br:nth-of-type(2){display:none}.hero-gallery{height:410px;grid-template-columns:1.2fr 1fr;gap:12px}.hero-photo img{object-position:center 40%}.hero-photo-birthday img{object-position:center 34%}.hero-note{font-size:13px}.hero-actions .text-link{font-size:14px}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}.section{padding-block:64px}.section h2,.together-copy h2,.how-section h2,.album-section h2,.closing-section h2{font-size:29px}.section-heading{gap:18px}.together-inner{padding-block:55px;gap:35px}.together-copy>p br{display:none}.album-section{gap:30px;padding-block:55px}.step-grid{gap:25px}.step-grid h3{font-size:16px}.faq-section{gap:24px}.footer-top{gap:18px}.beta-notice{font-size:12px}}
@media(max-width:600px){.container{width:calc(100% - 40px)}.brand-english{font-size:8px}.hero h1{font-size:38px;letter-spacing:-2px;line-height:1.3}.hero-description{font-size:15px}.hero-actions{gap:8px 18px;margin-top:24px}.hero-actions .button{font-size:14px;min-height:50px;padding:12px 18px}.hero-gallery{height:360px}.hero-photo figcaption{font-size:11px;padding-inline:11px}.hero-note{font-size:12px}.image-disclaimer{font-size:11px}.value-strip-inner{font-size:12px;gap:10px;flex-wrap:wrap;min-height:65px;justify-content:center;padding-block:14px}.value-strip .strip-dot{display:none}.section-heading>.text-link{font-size:14px}.eyebrow{font-size:10px;letter-spacing:1.4px}.template-caption h3{font-size:14px;line-height:1.5}.template-caption p{font-size:12px}.template-caption>span{display:none}.section-footnote{font-size:12px}.together-inner{display:grid;grid-template-columns:1fr}.together-art{width:100%;max-width:360px;margin:0 auto}.together-copy h2{margin-top:12px}.goods-grid{grid-template-columns:1fr;gap:32px}.goods-caption h3{font-size:17px}.goods-caption p{font-size:14px}.goods-bottom{align-items:flex-start;gap:20px}.goods-bottom p{font-size:14px}.album-section{grid-template-columns:1fr}.album-features article{padding:20px 0}.how-section{padding-block:55px}.step-grid{grid-template-columns:1fr;gap:24px}.step-grid>li{display:flex;gap:24px;padding-top:20px}.step-grid h3{font-size:17px}.step-grid p{font-size:14px}.faq-heading>.text-link{font-size:14px}.faq-list summary{font-size:15px;line-height:1.6}.closing-inner{align-items:flex-start}.closing-section{padding-block:48px}.closing-inner .button{margin-top:8px}.footer-top>p,.footer-links{font-size:13px}.business-information,.footer-bottom{font-size:12px}.footer-brand .brand-english{font-size:9px}}
