*{box-sizing:border-box;margin:0;padding:0}:root{--green-950:#0a1f18;--green-900:#0d2921;--green-800:#12352c;--green-700:#1c4438;--green-600:#2b5648;--green-500:#3f6b5b;--green-400:#5c8576;--green-300:#86a89b;--green-200:#b8ccc3;--cream-50:#fbfaf6;--cream-100:#f5f2ed;--cream-200:#e8e5dc;--cream-300:#d9d5c8;--cream-400:#c4bfae;--seal-red:#8a2f2a;--seal-gold:#b0902f;--ink-rgb:18,53,44;--paper-rgb:245,242,237;--page:var(--cream-200);--surface-card:var(--cream-100);--surface-raised:var(--cream-50);--surface-inverse:var(--green-800);--ink:var(--green-800);--ink-soft:rgba(18,53,44,0.62);--ink-faint:rgba(18,53,44,0.38);--ink-ghost:rgba(18,53,44,0.14);--ink-on-inverse:var(--cream-100);--border:var(--green-800);--border-soft:rgba(18,53,44,0.22);--border-dotted:rgba(18,53,44,0.45);--accent:var(--green-800);--accent-hover:var(--green-700);--focus-ring:rgba(18,53,44,0.35);--logo-filter:brightness(1);--glow-text:none;--glow-text-soft:none;--glow-rgb:var(--ink-rgb);--shadow-rgb:var(--ink-rgb);--stripe-rgb:var(--ink-rgb);--bg-page:var(--cream-200);--bg-card:var(--cream-100);--fg:var(--green-800);--btn-bg:var(--green-800);--btn-icon-filter:brightness(0) invert(1) sepia(1) saturate(0.3) brightness(1.8);--wheel-filter:drop-shadow(0 0 14px rgba(18,53,44,0.3));--glow-rgba:18,53,44;--shadow-rgba:18,53,44;--bar-stripe-rgba:18,53,44}:root[data-theme=dark]{--page:var(--green-950);--surface-card:var(--green-800);--surface-raised:var(--green-700);--surface-inverse:var(--cream-100);--ink:var(--cream-100);--ink-soft:rgba(245,242,237,0.66);--ink-faint:rgba(245,242,237,0.42);--ink-ghost:rgba(245,242,237,0.16);--ink-on-inverse:var(--green-800);--border:var(--cream-100);--border-soft:rgba(245,242,237,0.26);--border-dotted:rgba(245,242,237,0.48);--accent:var(--cream-100);--accent-hover:var(--cream-50);--focus-ring:rgba(245,242,237,0.4);--logo-filter:brightness(0) invert(0.96) sepia(0.08) saturate(0.5) drop-shadow(0 0 12px rgba(245,242,237,0.35));--glow-text:0 0 6px rgba(245,242,237,0.4);--glow-text-soft:0 0 6px rgba(245,242,237,0.25);--glow-rgb:var(--paper-rgb);--shadow-rgb:var(--paper-rgb);--stripe-rgb:var(--paper-rgb);--bg-page:var(--green-950);--bg-card:var(--green-800);--fg:var(--cream-100);--btn-bg:var(--cream-100);--btn-icon-filter:brightness(0) saturate(100%) invert(17%) sepia(28%) saturate(700%) hue-rotate(120deg) brightness(60%);--wheel-filter:drop-shadow(0 0 14px rgba(245,242,237,0.3));--glow-rgba:245,242,237;--shadow-rgba:245,242,237;--bar-stripe-rgba:245,242,237}:root{--font-sans:"Proxima Nova","Jost","Helvetica Neue",Arial,sans-serif;--font-cond:"Proxima Nova","Jost",sans-serif;--font-wordmark:"GT Pantheon",Georgia,serif;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--fw-black:900;--track-tight:-0.01em;--track-normal:0.02em;--track-label:0.2em;--track-wide:0.32em;--track-widest:0.4em;--fs-micro:9px;--fs-mini:10px;--fs-caption:11px;--fs-small:12px;--fs-body:14px;--fs-lead:16px;--fs-h4:20px;--fs-h3:26px;--fs-h2:34px;--fs-h1:46px;--lh-tight:1.1;--lh-snug:1.35;--lh-body:1.65;--lh-loose:1.8;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--card-pad:28px;--bar-h:26px;--width-dossier:460px;--width-desktop:760px;--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-pill:999px;--hair:0.5px;--rule:1px;--rule-bold:1.5px;--shadow-stamp:3px 3px 0 rgba(var(--shadow-rgb),0.15),0 0 24px rgba(var(--shadow-rgb),0.10);--shadow-stamp-sm:2px 2px 0 rgba(var(--shadow-rgb),0.15),0 0 12px rgba(var(--shadow-rgb),0.08);--shadow-stamp-lg:5px 5px 0 rgba(var(--shadow-rgb),0.18),0 0 40px rgba(var(--shadow-rgb),0.12);--stripe-fine:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(var(--stripe-rgb),0.06) 2px,rgba(var(--stripe-rgb),0.06) 3px);--stripe-guilloche:repeating-linear-gradient(45deg,transparent 0px,transparent 3px,rgba(var(--stripe-rgb),0.05) 3px,rgba(var(--stripe-rgb),0.05) 4px),repeating-linear-gradient(-45deg,transparent 0px,transparent 3px,rgba(var(--stripe-rgb),0.05) 3px,rgba(var(--stripe-rgb),0.05) 4px);--border-hair:var(--hair) solid var(--border-soft);--border-rule:var(--rule-bold) solid var(--border);--border-dot:var(--rule-bold) dotted var(--border-dotted);--border-dash:var(--rule) dashed var(--border-dotted);--ease-ceremony:cubic-bezier(0.4,0,0.2,1);--dur-fast:0.2s;--dur-mid:0.35s;--dur-slow:0.6s}body,html{min-height:100%}body{background:var(--page);font-family:var(--font-sans);min-height:100vh;transition:background var(--dur-slow) ease}a,body{color:var(--ink)}a:hover{color:var(--ink-soft)}.clinic-icon img,.gate-logo,.hero-crest img,.home-link img,.site-logo{filter:none;transition:filter var(--dur-slow) ease}:root[data-theme=dark] .clinic-icon img,:root[data-theme=dark] .gate-logo,:root[data-theme=dark] .hero-crest img,:root[data-theme=dark] .home-link img,:root[data-theme=dark] .site-logo{filter:drop-shadow(0 0 12px rgba(245,242,237,.35))}.theme-toggle{position:fixed;top:20px;right:20px;z-index:550;width:58px;height:30px;background:var(--surface-card);border:var(--rule-bold) solid var(--border);border-radius:var(--radius-pill);cursor:pointer;display:flex;align-items:center;padding:2px;box-shadow:var(--shadow-stamp-sm);transition:border-color var(--dur-slow) ease,background var(--dur-slow) ease,box-shadow var(--dur-slow) ease}.theme-toggle-thumb{width:22px;height:22px;border-radius:50%;background:var(--ink);box-shadow:0 0 8px rgba(var(--glow-rgb),.4);transition:transform .5s var(--ease-ceremony),background var(--dur-slow) ease,box-shadow var(--dur-slow) ease}:root[data-theme=dark] .theme-toggle-thumb{transform:translateX(28px)}.fade-overlay{position:fixed;inset:0;background:var(--page);opacity:0;pointer-events:none;z-index:90;transition:opacity .18s ease,background .18s ease}.fade-overlay.flashing{opacity:.14}.crosslink-btn{position:fixed;bottom:24px;right:24px;display:inline-block;background:var(--surface-card);color:var(--ink);border:var(--rule-bold) solid var(--border);box-shadow:var(--shadow-stamp-sm);font-family:var(--font-sans);font-size:var(--fs-mini);letter-spacing:.18em;text-transform:uppercase;font-weight:var(--fw-semibold);padding:10px 16px;text-decoration:none;opacity:0;animation:fadeInBtn .6s ease 5s forwards;transition:box-shadow .2s ease}.crosslink-btn:hover{box-shadow:4px 4px 0 rgba(var(--shadow-rgb),.2),0 0 28px rgba(var(--shadow-rgb),.12)}@keyframes fadeInBtn{to{opacity:1}}.tb-bar{position:fixed;top:0;left:0;right:0;height:44px;z-index:500;display:flex;align-items:center;justify-content:center;gap:16px;background:var(--surface-card);border-bottom:var(--rule-bold) solid var(--border);box-shadow:var(--shadow-stamp-sm);transition:transform var(--dur-slow) var(--ease-ceremony),background var(--dur-slow) ease,border-color var(--dur-slow) ease}.tb-bar.collapsed{transform:translateY(-100%)}.tb-inner{width:100%;max-width:var(--width-dossier);height:44px;display:flex;align-items:center;gap:16px;padding:0 16px}@media(min-width:700px){.tb-inner{max-width:var(--width-desktop);padding:0 20px}}.tb-viewport{position:relative;flex:1;overflow:hidden;height:100%;display:flex;align-items:center;margin-right:90px}.tb-quote-row{position:absolute;top:50%;left:0;white-space:nowrap;display:flex;align-items:baseline;transform:translateY(-50%);transition:opacity .4s ease}.tb-quote{font-weight:var(--fw-light);font-size:var(--fs-small);color:var(--ink-soft);font-style:italic;letter-spacing:.01em}.tb-name,.tb-quote{font-family:var(--font-sans)}.tb-name{font-weight:var(--fw-semibold);font-size:var(--fs-mini);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-faint);margin-left:14px}.tb-controls{flex-shrink:0}.tb-controls,.tb-fixed-controls{display:flex;align-items:center;gap:10px}.tb-fixed-controls{position:fixed;top:0;right:12px;z-index:510;height:44px}.tb-toggle{width:44px;height:24px;background:var(--surface-card);border:var(--rule-bold) solid var(--border);border-radius:var(--radius-pill);cursor:pointer;display:flex;align-items:center;padding:2px;box-shadow:var(--shadow-stamp-sm);transition:background var(--dur-slow) ease,border-color var(--dur-slow) ease}.tb-toggle .theme-toggle-thumb{width:16px;height:16px;border-radius:50%;background:var(--ink);box-shadow:0 0 4px rgba(var(--glow-rgb),.4);transition:transform var(--dur-mid) var(--ease-ceremony),background var(--dur-slow) ease}:root[data-theme=dark] .tb-toggle .theme-toggle-thumb{transform:translateX(20px)}.tb-collapse-btn{background:none;border:none;cursor:pointer;color:var(--ink-faint);padding:4px;display:flex;align-items:center;justify-content:center;transition:color var(--dur-fast) ease,opacity var(--dur-fast) ease}.tb-collapse-btn:hover{color:var(--ink)}.tb-pull-tab{position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:499;width:50px;height:20px;background:var(--surface-card);border:var(--rule-bold) solid var(--border);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink-soft);box-shadow:var(--shadow-stamp-sm);font-size:9px;transition:top var(--dur-slow) var(--ease-ceremony),background var(--dur-slow) ease}.tb-pull-tab.hidden{top:-40px}.clinic-page{padding-top:64px;padding-bottom:170px;min-height:100vh;display:flex;justify-content:center;background:var(--page);transition:background var(--dur-slow) ease}.clinic-col{width:100%;max-width:var(--width-dossier);display:flex;flex-direction:column;gap:20px;padding:20px 16px 0}@media(min-width:700px){.clinic-col{max-width:var(--width-desktop);padding:24px 20px 0}}.card{background:var(--surface-card);border:var(--rule-bold) solid var(--border);box-shadow:var(--shadow-stamp);transition:background var(--dur-slow) ease,border-color var(--dur-slow) ease,box-shadow var(--dur-slow) ease}.card-bar{height:var(--bar-h);border-bottom:var(--rule-bold) solid var(--border);display:flex;align-items:center;padding:0 14px;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-mini);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink);background:var(--stripe-fine);text-shadow:var(--glow-text-soft);transition:border-color var(--dur-slow) ease,background var(--dur-slow) ease,color var(--dur-slow) ease}.card-body,.card-body-hero{padding:var(--card-pad)}.card.sm{box-shadow:var(--shadow-stamp-sm)}.card.lg{box-shadow:var(--shadow-stamp-lg)}.card-rule{border:none;border-top:var(--rule-bold) solid var(--border);margin:var(--card-pad) calc(-1 * var(--card-pad));transition:border-color var(--dur-slow) ease}.hero-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:var(--card-pad)}.hero-title{font-size:var(--fs-h4);letter-spacing:.06em;color:var(--ink);line-height:var(--lh-tight);text-shadow:var(--glow-text)}.hero-sub,.hero-title{font-family:var(--font-sans);font-weight:var(--fw-semibold);text-transform:uppercase;transition:color var(--dur-slow) ease}.hero-sub{font-size:var(--fs-mini);letter-spacing:var(--track-label);color:var(--ink-faint);margin-top:6px}.hero-crest{flex-shrink:0;display:flex;align-items:center;justify-content:center}.hero-crest img{width:64px;height:64px;-o-object-fit:contain;object-fit:contain}.hero-lead{font-weight:var(--fw-semibold);line-height:var(--lh-snug);color:var(--ink);margin-bottom:16px;text-shadow:var(--glow-text-soft)}.hero-body,.hero-lead{font-family:var(--font-sans);font-size:var(--fs-body);transition:color var(--dur-slow) ease}.hero-body{font-weight:var(--fw-light);line-height:var(--lh-body);color:var(--ink-soft);display:flex;flex-direction:column;gap:12px}.hero-body p{margin:0}.spec-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px}.spec-row+.spec-row{border-top:var(--hair) dashed var(--border-dotted);padding-top:8px}.spec-label{font-weight:var(--fw-semibold);font-size:var(--fs-mini);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap}.spec-label,.spec-value{font-family:var(--font-sans);transition:color var(--dur-slow) ease}.spec-value{font-size:var(--fs-small);color:var(--ink-soft);text-align:right}.section-heading{display:flex;align-items:center;gap:12px;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-caption);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink);transition:color var(--dur-slow) ease}.section-heading:after{content:"";flex:1;height:var(--hair);background:var(--border-soft);transition:background var(--dur-slow) ease}.tag{display:inline-block;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-micro);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-faint);border:var(--rule-bold) solid var(--border-soft);padding:2px 6px;border-radius:var(--radius-xs);transition:color var(--dur-slow) ease,border-color var(--dur-slow) ease}.list-item{padding-top:16px;margin-top:16px;border-top:var(--hair) solid var(--border-soft)}.list-item:first-child{padding-top:0;margin-top:0;border-top:none}.list-item-title{font-weight:var(--fw-semibold);letter-spacing:.04em;color:var(--ink);margin-bottom:4px;text-shadow:var(--glow-text-soft)}.list-item-desc,.list-item-title{font-family:var(--font-sans);font-size:var(--fs-small);transition:color var(--dur-slow) ease}.list-item-desc{font-weight:var(--fw-light);line-height:var(--lh-body);color:var(--ink-soft)}.booking-price{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-h3);color:var(--ink);text-align:center;text-shadow:var(--glow-text);transition:color var(--dur-slow) ease}.booking-price-detail{font-weight:var(--fw-light);font-size:var(--fs-small);color:var(--ink-soft)}.btn-primary{display:block;width:100%;background:var(--ink);color:var(--surface-card);border:var(--rule-bold) solid var(--border);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-small);letter-spacing:var(--track-label);text-transform:uppercase;text-align:center;text-decoration:none;padding:14px var(--card-pad);cursor:pointer;box-shadow:var(--shadow-stamp-sm);transition:background var(--dur-fast) ease,color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-stamp);color:var(--surface-card)}.float-link{position:fixed;bottom:-60px;right:24px;z-index:400;background:var(--surface-card);border:var(--rule-bold) solid var(--border);box-shadow:var(--shadow-stamp-sm);padding:10px 16px;border-radius:var(--radius-xs);opacity:0;transition:bottom var(--dur-slow) var(--ease-ceremony),opacity var(--dur-slow) ease,background var(--dur-slow) ease,border-color var(--dur-slow) ease;animation:floatLinkIn .6s ease 5s forwards}@keyframes floatLinkIn{to{bottom:24px;opacity:1}}.float-link.visible{bottom:24px;opacity:1;animation:none}.float-link a{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-mini);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--ink);transition:color var(--dur-slow) ease}.home-link{display:inline-flex;cursor:pointer;flex-shrink:0}.home-link img{width:64px;height:64px;-o-object-fit:contain;object-fit:contain}@media(max-width:480px){.clinic-col{padding:16px 12px 0}.card-body,.card-body-hero{padding:20px}.card-rule{margin:16px -20px}.hero-crest img,.home-link img{width:56px;height:56px}}@font-face{font-family:GT Pantheon;src:url(/site/fonts/GT-Pantheon-Micro-Black-Trial.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-Light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-LightItalic.otf) format("opentype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-RegularItalic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-Semibold.otf) format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-SemiboldItalic.otf) format("opentype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-BoldIt.otf) format("opentype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-Extrabold.otf) format("opentype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Proxima Nova;src:url(/site/fonts/ProximaNova-Black.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}.gift-btn{display:flex;align-items:stretch;width:100%;background:var(--surface-card);border:var(--rule-bold) solid var(--border);color:var(--ink);cursor:pointer;text-align:left;font-family:var(--font-sans);box-shadow:var(--shadow-stamp),0 0 20px rgba(var(--shadow-rgb),.07);transition:transform var(--dur-mid) var(--ease-ceremony),box-shadow var(--dur-mid) ease,background var(--dur-mid) ease,color var(--dur-mid) ease}.gift-btn .clinic-icon{color:var(--ink);transition:color var(--dur-mid) ease}.gift-btn:hover{background:var(--btn-bg);color:var(--surface-card);transform:translate(-1px,-1px);box-shadow:4px 4px 0 rgba(var(--shadow-rgb),.2),0 0 24px rgba(var(--glow-rgb),.3)}.gift-btn:hover .clinic-name{text-shadow:none}.gift-btn:hover .clinic-icon{border-right-color:var(--surface-card);color:var(--surface-card)}.gift-btn:hover .clinic-icon img{filter:var(--btn-icon-filter)}.gift-btn:active{transform:translate(1px,1px);box-shadow:1px 1px 0 rgba(var(--shadow-rgb),.2)}.float-link{min-width:190px;min-height:40px;text-align:center}.float-link,.float-link a{display:flex;align-items:center;justify-content:center}.float-link a{width:100%}.float-link.float-link-gift{bottom:-60px;right:24px;cursor:pointer;animation:floatLinkGiftIn .6s ease 5s forwards}.float-link.float-link-gift.visible{bottom:84px;animation:none}@keyframes floatLinkGiftIn{to{bottom:84px;opacity:1}}.float-link-gift-inner{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-mini);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);transition:color var(--dur-slow) ease}.float-link-gift-inner img,.float-link-gift-inner svg{display:block}.gift-banner{position:fixed;left:0;right:0;bottom:-120px;z-index:420;display:flex;justify-content:center;padding:0 16px;opacity:0;transition:bottom var(--dur-slow) var(--ease-ceremony),opacity var(--dur-slow) ease;pointer-events:none}.gift-banner.visible{bottom:20px;opacity:1;pointer-events:auto}.gift-banner.anchored{position:static;bottom:auto;opacity:1;pointer-events:auto;transition:none;padding:0}.gift-banner-inner{width:100%;max-width:var(--width-dossier)}@media(min-width:700px){.gift-banner-inner{max-width:var(--width-desktop)}}.gift-banner .gift-btn{box-shadow:var(--shadow-stamp-lg)}.gift-banner-eyebrow{font-family:var(--font-sans);font-weight:var(--fw-light);font-size:var(--fs-small);font-style:italic;color:var(--ink-soft);text-align:center;margin-bottom:10px}.gift-overlay{position:fixed;inset:0;z-index:600;background:rgba(0,0,0,.28);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;opacity:0;transition:opacity var(--dur-mid) ease}.gift-overlay.open{opacity:1}.gift-modal-wrap{position:relative;width:100%;max-width:520px;margin:auto;transform:translateY(12px);transition:transform var(--dur-mid) var(--ease-ceremony)}.gift-overlay.open .gift-modal-wrap{transform:none}.gift-modal{background:var(--surface-card);border:var(--rule-bold) solid var(--border);box-shadow:var(--shadow-stamp-lg)}.gift-modal-bar{height:var(--bar-h);border-bottom:var(--rule-bold) solid var(--border);align-items:center;justify-content:space-between;padding:0 14px;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-mini);letter-spacing:var(--track-label);text-transform:uppercase;background:var(--stripe-fine)}.gift-close,.gift-modal-bar{display:flex;color:var(--ink)}.gift-close{background:none;border:none;cursor:pointer;opacity:.6;padding:4px;transition:opacity var(--dur-fast) ease}.gift-close:hover{opacity:1}.gift-modal-body{padding:var(--card-pad);max-height:calc(100vh - 120px);overflow-y:auto}.gift-header{font-weight:var(--fw-semibold);font-size:var(--fs-h4);letter-spacing:.04em;color:var(--ink);margin-bottom:6px;text-shadow:var(--glow-text)}.gift-header,.gift-intro{font-family:var(--font-sans)}.gift-intro{font-weight:var(--fw-light);font-size:var(--fs-small);line-height:var(--lh-body);color:var(--ink-soft);margin-bottom:24px}.gift-section-label{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-mini);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-faint);margin:20px 0 12px;padding-bottom:8px;border-bottom:var(--hair) solid var(--border-soft)}.gift-section-label:first-of-type{margin-top:0}.gift-field{margin-bottom:14px}.gift-field:last-child{margin-bottom:0}.gift-label{display:block;font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px}.gift-hint{font-style:italic;font-weight:var(--fw-light);opacity:.8;text-transform:none;letter-spacing:.02em}.gift-req{color:var(--seal-red);font-weight:var(--fw-semibold);margin-left:1px}.gift-payment-note{font-style:italic;font-size:var(--fs-mini);color:var(--ink-faint);margin-top:10px}.gift-input,.gift-payment-note,.gift-textarea{font-family:var(--font-sans);font-weight:var(--fw-light);letter-spacing:.02em}.gift-input,.gift-textarea{width:100%;background:transparent;border:none;border-bottom:var(--rule) dotted var(--border-dotted);padding:6px 0;font-size:var(--fs-small);color:var(--ink);outline:none;transition:border-color var(--dur-fast) ease}.gift-input:focus,.gift-textarea:focus{border-bottom-color:var(--ink)}.gift-input::-moz-placeholder,.gift-textarea::-moz-placeholder{color:var(--ink-faint);font-style:italic}.gift-input::placeholder,.gift-textarea::placeholder{color:var(--ink-faint);font-style:italic}.gift-textarea{resize:vertical;min-height:60px;line-height:var(--lh-body)}.gift-bday-row{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}.gift-bday-row .gift-field{margin-bottom:0;flex:1;min-width:60px}.gift-check{display:flex;align-items:center;gap:8px;margin-top:10px;cursor:pointer;font-family:var(--font-sans);font-size:var(--fs-small);font-weight:var(--fw-light);color:var(--ink-soft)}.gift-check input{accent-color:var(--ink)}.gift-note-italic{font-style:italic;font-size:var(--fs-mini);color:var(--ink-faint);margin-top:6px}.gift-note-italic,.gift-radio{font-family:var(--font-sans);font-weight:var(--fw-light)}.gift-radio{display:flex;align-items:flex-start;gap:8px;padding:8px 0;cursor:pointer;font-size:var(--fs-small);color:var(--ink-soft);line-height:var(--lh-snug)}.gift-radio input{margin-top:2px;accent-color:var(--ink);flex-shrink:0}.gift-radio a{color:var(--ink);text-decoration:underline}.gift-radio-other{margin-top:6px}.gift-submit{display:block;width:100%;margin-top:24px;background:var(--ink);color:var(--surface-card);border:var(--rule-bold) solid var(--border);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-small);letter-spacing:var(--track-label);text-transform:uppercase;text-align:center;padding:14px;cursor:pointer;box-shadow:var(--shadow-stamp-sm);transition:background var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.gift-submit:hover{background:var(--accent-hover);box-shadow:var(--shadow-stamp)}.gift-submit-note{font-style:italic;font-weight:var(--fw-light);color:var(--ink-faint);margin-top:12px}.gift-error,.gift-submit-note{font-family:var(--font-sans);font-size:var(--fs-mini);text-align:center}.gift-error{color:var(--seal-red);margin-top:10px;letter-spacing:.02em}.gift-confirm{padding:20px 0;text-align:center}.gift-confirm-mark{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-micro);letter-spacing:var(--track-widest);text-transform:uppercase;color:var(--ink-faint);margin-bottom:20px}.gift-confirm-text{font-family:var(--font-sans);font-weight:var(--fw-light);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink)}.gift-confirm-text p{margin-bottom:14px}.gift-confirm-text p:last-child{margin-bottom:0}.gift-done{margin-top:24px;background:var(--ink);color:var(--surface-card);border:var(--rule-bold) solid var(--border);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-mini);letter-spacing:var(--track-label);text-transform:uppercase;padding:12px 28px;cursor:pointer;box-shadow:var(--shadow-stamp-sm);transition:background var(--dur-fast) ease}.gift-done:hover{background:var(--accent-hover)}.gift-cancel{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:32px;background:var(--surface-card);text-align:center}.gift-cancel-text{font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-h4);line-height:var(--lh-snug);color:var(--ink);max-width:320px;text-shadow:var(--glow-text-soft)}.gift-cancel-actions{display:flex;flex-direction:column;align-items:center;gap:14px}.gift-cancel-no{background:var(--ink);color:var(--surface-card);border:var(--rule-bold) solid var(--border);font-family:var(--font-sans);font-weight:var(--fw-semibold);font-size:var(--fs-body);letter-spacing:var(--track-label);text-transform:uppercase;padding:15px 40px;cursor:pointer;box-shadow:var(--shadow-stamp-sm);transition:background var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.gift-cancel-no:hover{background:var(--accent-hover);box-shadow:var(--shadow-stamp)}.gift-cancel-yes{background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-weight:var(--fw-light);font-size:var(--fs-mini);letter-spacing:.04em;color:var(--ink-faint);text-decoration:underline;text-underline-offset:3px;padding:4px;transition:color var(--dur-fast) ease}.gift-cancel-yes:hover{color:var(--ink-soft)}