/* Private Gift follows the site's ivory, champagne and dark marble palette. */
.gift-story h2,.gift-story h3{font-family:"Noto Serif JP","Cormorant Garamond",serif;font-weight:400}
.en .gift-story h2,.en .gift-story h3{font-family:"Cormorant Garamond","Noto Serif JP",serif}
.gift-story h2{font-size:clamp(32px,3.6vw,56px);line-height:1.5;margin:16px 0 26px}
.gift-story p{line-height:2}
.gift-story section[id]{scroll-margin-top:110px}
.gift-hero{height:85svh;min-height:740px;padding-bottom:8vh}
.gift-hero>img{object-position:65% center}
.gift-hero .inner-hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.12) 80%),linear-gradient(0deg,rgba(0,0,0,.65),transparent 80%)}
.gift-hero .inner-hero-copy{max-width:750px}
.gift-hero h1{font-size:clamp(38px,4.1vw,60px);line-height:1.5;letter-spacing:0;margin:20px 0}
.gift-headline-line{display:block}
html[lang="ja"] .gift-headline-line{white-space:nowrap}
.gift-hero-lede{max-width:620px;font-size:16px;line-height:2.1;margin:20px 0 32px}
.gift-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.gift-intro{padding-top:105px;padding-bottom:105px;text-align:center}
.gift-intro>div{max-width:850px;margin:auto}
.gift-intro p:not(.section-kicker){max-width:760px;margin:0 auto;font-size:16px;line-height:2.2}
.gift-intro .section-kicker,.gift-gallery .section-kicker,.gift-contact .section-kicker{color:#806343}
.gift-heading{max-width:800px;margin-bottom:52px}
.gift-heading p:not(.section-kicker){font-size:15px;opacity:.8;max-width:690px}
.gift-gallery{background:#e9e1d6;color:var(--ink)}
.gift-designs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.gift-design{margin:0;background:#171310;color:var(--ivory);display:flex;flex-direction:column}
.gift-design img{width:100%;aspect-ratio:1.45;object-fit:cover;object-position:center}
.gift-design figcaption{padding:32px 35px 35px;flex:1}
.gift-design .design-number{color:var(--champagne);font:500 12px "Cormorant Garamond",serif;letter-spacing:.16em}
.gift-design h3{font-size:clamp(26px,2.4vw,36px);margin:13px 0 16px;line-height:1.4}
.gift-design p{font-size:14px;opacity:.8;margin:0 0 18px}
.gift-design .gift-detail{border-top:1px solid var(--line);padding-top:18px;font-size:13px;opacity:.66}
.gift-design .text-link{display:inline-block;margin-top:8px;font-size:13px}
.gift-gallery-note{font-size:12px;opacity:.65;margin:26px 0 0}
.gift-gallery>.gift-actions{margin-top:34px}
.gift-process{background:#11100f}
.gift-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}
.gift-process-grid article{padding:35px 28px 10px 0}
.gift-process-grid article+article{border-left:1px solid var(--line);padding-left:28px}
.gift-process-grid b{font:400 20px "Cormorant Garamond",serif;color:var(--champagne)}
.gift-process-grid h3{font-size:24px;line-height:1.5;margin:26px 0 16px}
.gift-process-grid p{font-size:14px;opacity:.75;margin:0}
.gift-approaches{background:#24201c;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}
.gift-approach-copy{max-width:600px}
.gift-approach-copy p:not(.section-kicker){font-size:15px;opacity:.82}
.gift-approach-options article{padding:26px 0;border-top:1px solid var(--line)}
.gift-approach-options h3{font-size:26px;margin:0 0 12px}
.gift-approach-options p{font-size:14px;opacity:.75;margin:0}
.gift-approach-copy .text-link{display:inline-block;margin-top:20px}
.gift-contact{background:var(--ivory);color:var(--ink)}
.gift-contact-top{display:grid;grid-template-columns:1.15fr .85fr;gap:9vw;align-items:start}
.gift-contact-copy>p:not(.section-kicker){font-size:15px;max-width:640px;margin-bottom:28px}
.gift-contact-copy .gift-actions{gap:15px}
.gift-contact .button.outline{border-color:#8c7e6e;background:transparent;color:var(--ink)}
.gift-contact .button.outline:hover{background:#e7ded0}
.gift-addresses{font-size:13px;line-height:1.9;margin:26px 0 0;overflow-wrap:anywhere}
.gift-addresses a{display:block;width:max-content;max-width:100%;border-bottom:1px solid #b7a793;margin-top:8px}
.gift-line-card{text-align:center;border-left:1px solid rgba(0,0,0,.18);padding-left:5vw}
.gift-line-card img{width:260px;max-width:100%;margin:0 auto 18px;background:white}
.gift-line-card h3{font-size:25px;margin:0 0 15px}
.gift-line-card p{font-size:13px;max-width:320px;margin:16px auto 0}
.gift-line-card .text-link{display:inline-block;color:var(--ink);border-color:#b7a793;font-size:14px}
.gift-inquiry{border-top:1px solid rgba(0,0,0,.18);padding-top:60px;margin-top:70px;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}
.gift-inquiry-intro h3{font-size:clamp(28px,2.8vw,38px);line-height:1.6;margin:0 0 18px}
.gift-inquiry-intro p{font-size:14px;opacity:.8}
.gift-inquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:24px;min-width:0}
.gift-inquiry-form label{display:flex;flex-direction:column;gap:10px;font-size:13px;min-width:0}
.gift-inquiry-form input,.gift-inquiry-form select,.gift-inquiry-form textarea{width:100%;min-width:0;border:0;border-bottom:1px solid #a4988b;background:transparent;color:var(--ink);border-radius:0;padding:13px 2px;font-size:16px}
.gift-inquiry-form textarea{border:1px solid #b8ac9e;padding:14px;resize:vertical;line-height:1.7}
.gift-inquiry-form input:focus-visible,.gift-inquiry-form select:focus-visible,.gift-inquiry-form textarea:focus-visible{outline:2px solid #806343;outline-offset:4px}
.gift-inquiry-form .form-note{opacity:.78;margin:0;line-height:1.9;font-size:13px}
.gift-inquiry-form .button{justify-self:start}
.gift-draft-fallback{grid-column:1/-1;padding:24px;background:#e7ded0;border:1px solid #b8ac9e}
.gift-draft-fallback[hidden]{display:none}
.gift-draft-fallback p{font-size:14px;margin:0 0 16px}
.gift-draft-fallback textarea{margin:18px 0;width:100%;font-size:14px;background:var(--ivory)}
.gift-draft-fallback .gift-actions{gap:14px}
.gift-copy-status{margin-top:15px;display:block;font-size:13px}
.gift-contact :focus-visible,.gift-story a:focus-visible{outline:2px solid var(--champagne);outline-offset:5px}
.gift-mobile-cta{display:none}
@media(max-width:980px){
 .gift-hero h1{font-size:clamp(32px,5.3vw,48px)}
 .gift-process-grid{grid-template-columns:1fr 1fr}
 .gift-process-grid article{padding:30px 25px 35px 0;border-bottom:1px solid var(--line)}
 .gift-process-grid article:nth-child(3){border-left:0;padding-left:0}
 .gift-approaches,.gift-contact-top,.gift-inquiry{grid-template-columns:1fr;gap:45px}
 .gift-line-card{border-left:0;border-top:1px solid rgba(0,0,0,.18);padding:35px 0 0}
 .gift-inquiry{margin-top:50px;padding-top:45px}
 .gift-design figcaption{padding:25px}
}
@media(max-width:620px){
 .gift-story .section-pad{padding:76px 6vw}
 .gift-hero{height:auto;min-height:770px;padding:130px 6vw 65px;align-items:flex-end}
 .gift-hero>img{object-position:66% center}
 .gift-hero .inner-hero-overlay{background:linear-gradient(0deg,rgba(0,0,0,.95),rgba(0,0,0,.15) 95%)}
 .gift-hero h1{font-size:clamp(23px,6.7vw,40px);line-height:1.65;margin:22px 0}
 .en .gift-hero h1{font-size:43px;line-height:1.12}
 .gift-hero-lede{font-size:15px;margin:20px 0 26px}
 .gift-actions{gap:22px}
 .gift-story h2{font-size:30px}
 .gift-designs,.gift-process-grid,.gift-inquiry-form{grid-template-columns:1fr}
 .gift-design img{aspect-ratio:1.15}
 .gift-design figcaption{padding:27px}
 .gift-process-grid article,.gift-process-grid article+article{border-left:0;padding:26px 0}
 .gift-process-grid h3{margin:14px 0;font-size:25px}
 .gift-inquiry-form .full{grid-column:1/-1}
 .gift-mobile-cta{display:flex;position:fixed;z-index:45;bottom:0;left:0;right:0;justify-content:center;align-items:center;min-height:58px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:#ede4d7;color:#1b1a18;font-size:14px;border-top:1px solid #b8ac9e;letter-spacing:.06em}
 .gift-mobile-cta[hidden]{display:none}
 body:has(.gift-story) footer{padding-bottom:110px}
 body.nav-open .gift-mobile-cta{display:none}
}
