:root{--paper:#f8f4ee;--paper-soft:#fffaf3;--ink:#171717;--deep:#29241f;--muted:#6b6259;--line:rgba(42,36,30,.12);--taupe:#76695e;--taupe-soft:#e8ded3;--cream:#fbf8f2;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--radius-md:28px;--radius-lg:42px;--shadow:0 28px 90px rgba(41,34,28,.12);--shadow-soft:0 18px 60px rgba(41,34,28,.075)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper);color:var(--ink);font-family:var(--sans);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;scroll-padding-top:108px}body{margin:0;background:radial-gradient(circle at 10% 0%,rgba(232,222,211,.55),transparent 36%),linear-gradient(180deg,var(--paper),#f4eee6 72%,#f0e7dc);color:var(--ink);min-height:100vh;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:18px;top:-100px;z-index:300;background:var(--deep);color:#fff;border-radius:999px;padding:10px 15px;font-size:13px;font-weight:800;letter-spacing:.04em;transition:top .2s ease}.skip-link:focus{top:16px}.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:220;background:transparent;pointer-events:none}.scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--taupe),var(--deep));transform-origin:left center}.topbar{position:sticky;top:0;z-index:200;background:rgba(248,244,238,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);box-shadow:0 10px 34px rgba(41,34,28,.035)}.nav{height:88px;display:flex;align-items:center;gap:18px}.brand{display:inline-flex;align-items:center;flex:0 0 auto;min-width:180px}.brand-logo-img{width:clamp(210px,18vw,300px);height:auto}.navlinks{margin-left:auto;display:flex;align-items:center;gap:22px;font-size:13px;color:rgba(23,23,23,.70)}.navlinks a{position:relative;padding-block:8px;transition:color .2s ease}.navlinks a:hover,.navlinks a[aria-current="page"]{color:var(--ink)}.navlinks a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--deep);opacity:.55}.nav-cta{border:1px solid var(--line);border-radius:999px;padding:11px 18px;background:rgba(255,255,255,.52);color:var(--deep)}.lang,.mobile-menu,.mobile-close{border:1px solid var(--line);background:rgba(255,255,255,.42);border-radius:999px;color:var(--deep);cursor:pointer}.lang{padding:10px 16px;font-size:13px;margin-left:4px}.mobile-menu{display:none;padding:10px 16px}.mobile-panel{position:fixed;inset:0;z-index:260;background:rgba(248,244,238,.98);padding-top:20px}.mobile-panel-inner{display:grid;gap:26px}.mobile-close{justify-self:end;width:46px;height:46px;font-size:24px}.mobile-panel nav{display:grid;gap:16px}.mobile-panel nav a{font-family:var(--serif);font-size:40px;line-height:1}.mobile-book{margin-top:12px;font-family:var(--sans);font-size:13px;letter-spacing:.13em;text-transform:uppercase;background:var(--deep);color:#fff;padding:16px 22px;border-radius:999px;justify-self:start}.section{padding:112px 0;border-top:1px solid rgba(42,36,30,.075)}.section-tight{padding:82px 0}.hero{padding:118px 0 112px;min-height:760px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.85fr);align-items:center;gap:64px}.eyebrow{font-family:var(--serif);font-size:clamp(13px,1vw,14px);line-height:1.08;font-weight:600;letter-spacing:.145em;text-transform:none;font-variant-caps:small-caps;color:rgba(78,70,62,.88);margin-bottom:15px}.display,.big-title,.route-title{font-family:var(--serif);font-weight:500;color:#202020;letter-spacing:-.055em}.display{font-size:clamp(64px,8vw,118px);line-height:.9;margin:18px 0 28px;max-width:820px}.big-title{font-size:clamp(42px,5.2vw,78px);line-height:.98;margin:0}.route-title{font-size:clamp(48px,7vw,92px);line-height:.94;margin:16px 0 22px;max-width:1120px}.hero-copy,.lead{color:var(--muted);font-size:18px;line-height:1.75}.hero-copy{max-width:590px}.lead{max-width:760px}.button-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:15px 23px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--line);transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease}.btn:hover,.nav-cta:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(41,34,28,.10)}.btn-primary{background:var(--deep);color:#fff;border-color:var(--deep)}.btn-soft{background:rgba(255,255,255,.56);color:var(--deep)}.visual-stack{position:relative;min-height:620px}.hero-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--taupe-soft);box-shadow:var(--shadow)}.hero-card-clean{position:absolute;top:0;right:0;width:86%}.hero-card img,.hero-card-clean img{height:610px;width:100%;object-fit:cover;object-position:center}.hero-card::after,.hero-card-clean::after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.48);border-radius:32px;pointer-events:none}.image-label{position:absolute;top:18px;left:18px;z-index:2;border-radius:999px;background:rgba(255,250,243,.88);color:rgba(41,34,28,.72);padding:10px 15px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;box-shadow:0 10px 30px rgba(41,34,28,.08)}.mini-card,.hero-secondary-card{display:none}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:34px;border:1px solid var(--line);border-radius:26px;overflow:hidden;background:rgba(255,255,255,.34);backdrop-filter:blur(10px);max-width:900px}.trust-item{min-height:112px;padding:20px 22px;border-right:1px solid var(--line);display:grid;align-content:center}.trust-item:last-child{border-right:0}.trust-value{font-family:var(--serif);font-size:38px;line-height:1;font-weight:600;font-feature-settings:"tnum" 1}.trust-label{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:800;margin-top:8px}.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.split.reverse{grid-template-columns:.95fr 1fr}.portrait,.visit-photo{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--taupe-soft);box-shadow:var(--shadow-soft)}.portrait img{width:100%;height:620px;object-fit:cover;object-position:center}.visit-photo img{width:100%;height:520px;object-fit:cover;object-position:center}.grid-head{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:end;margin-bottom:54px}.service-group{margin-top:52px}.category-title{font-family:var(--serif);font-size:clamp(32px,3vw,44px);letter-spacing:-.03em;margin:0 0 22px}.service-grid,.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card,.panel,.review,.guide-card,.work-card{background:rgba(255,255,255,.42);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:0 8px 34px rgba(41,34,28,.035)}.service-card,.panel,.review,.guide-card{padding:30px}.service-card,.work-card,.review,.guide-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.service-card:hover,.work-card:hover,.review:hover,.guide-card:hover{transform:translateY(-3px);border-color:rgba(22,19,17,.22);box-shadow:0 22px 56px rgba(41,34,28,.08)}.service-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.pill,.tag{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:7px 10px;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;background:rgba(255,255,255,.42)}.service-card h3,.work-card h3,.guide-card h3,.panel h2,.signal-card h2{font-family:var(--serif);font-size:clamp(25px,2.2vw,31px);letter-spacing:-.03em;line-height:1.05;margin:0 0 14px}.service-card p,.work-card p,.guide-card p,.panel p,.review p,.signal-card p{color:var(--muted);line-height:1.7}.best{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;line-height:1.65}.best strong{color:var(--deep)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.work-card{overflow:hidden}.work-card img{width:100%;height:360px;object-fit:cover}.work-body{padding:24px}.tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.review-grid,.review-page-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.review-large{min-height:250px}.stars{letter-spacing:.14em;color:#5d5148;font-size:13px;margin-bottom:18px}.quote{font-family:var(--serif);font-size:24px;line-height:1.35;letter-spacing:-.02em}.author{margin-top:22px;color:var(--muted);font-size:13px}.review-hero-grid{display:grid;grid-template-columns:1.1fr 360px;gap:52px;align-items:center}.rating-panel{border:1px solid var(--line);border-radius:var(--radius-lg);padding:38px;background:rgba(255,255,255,.42);box-shadow:var(--shadow-soft)}.rating-number{font-family:var(--serif);font-size:82px;line-height:1}.proof-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;background:rgba(255,255,255,.38);margin-top:28px}.proof-strip div{padding:24px;border-right:1px solid var(--line)}.proof-strip div:last-child{border-right:0}.proof-strip strong{display:block;font-family:var(--serif);font-size:42px;line-height:1}.proof-strip span{display:block;margin-top:8px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:800}.review-intro{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:36px}.signal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.signal-card{padding:30px;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.38)}.signal-kicker{display:block;font-size:11px;letter-spacing:.15em;color:var(--muted);font-weight:800;margin-bottom:18px}.visit-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:44px;align-items:center}.visit-direct-note{display:grid;gap:8px}.visit-direct-note p{font-size:18px;color:var(--muted);max-width:840px;margin:0}.visit-action-row{gap:10px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article{max-width:840px;margin:auto}.article h1{font-family:var(--serif);font-size:clamp(48px,7vw,86px);line-height:.96;letter-spacing:-.055em}.article h2{font-family:var(--serif);font-size:36px;margin:54px 0 12px}.article p{color:var(--muted);font-size:18px;line-height:1.8}.footer-dark{margin-top:96px;padding:92px 0 76px;background:linear-gradient(180deg,#191715,#0f0e0d);color:#f8f4ee;border-top:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}.footer-dark-inner{display:grid;gap:34px;text-align:center}.footer-dark-brand{display:grid;justify-items:center;gap:12px}.footer-dark-monogram{width:92px;height:auto;opacity:.96}.footer-dark-wordmark{font-family:var(--serif);font-size:clamp(24px,3.1vw,44px);letter-spacing:.22em;text-transform:uppercase;color:#f8f4ee;line-height:1.1}.footer-dark-tagline{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:rgba(248,244,238,.82)}.footer-dark-rule{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;color:rgba(248,244,238,.45);max-width:760px;margin:0 auto}.footer-dark-rule::before,.footer-dark-rule::after{content:"";display:block;height:1px;background:rgba(248,244,238,.25)}.footer-dark-rule span{width:5px;height:5px;background:#f8f4ee;transform:rotate(45deg);display:block}.footer-dark-details{display:grid;grid-template-columns:1.1fr 1.15fr .82fr 1.35fr .72fr;gap:0;border-top:1px solid rgba(248,244,238,.18);border-bottom:1px solid rgba(248,244,238,.18);max-width:1120px;margin:0 auto;width:100%}.footer-dark-details>div{padding:24px 20px;border-right:1px solid rgba(248,244,238,.18)}.footer-dark-details>div:last-child{border-right:0}.footer-dark-details span{display:block;margin-bottom:8px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:rgba(248,244,238,.66)}.footer-dark-details strong{display:block;font-size:14px;line-height:1.5;color:#fff;font-weight:700}.footer-dark-details a{color:#fff}.footer-dark-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.footer-dark-links a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:11px 18px;border:1px solid rgba(248,244,238,.24);border-radius:999px;color:#f8f4ee;background:rgba(255,255,255,.03);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;transition:background .2s ease,transform .2s ease,border-color .2s ease}.footer-dark-links a:hover{background:rgba(255,255,255,.10);border-color:rgba(248,244,238,.48);transform:translateY(-1px)}@media(max-width:1180px){.navlinks{gap:15px;font-size:12px}.nav-cta{padding:10px 13px}.brand-logo-img{width:240px}.display{font-size:clamp(58px,8vw,96px)}.route-title{font-size:clamp(46px,7vw,82px)}}@media(max-width:980px){html{scroll-padding-top:86px}.shell{width:min(100% - 30px,760px)}.nav{height:76px}.brand{min-width:auto}.brand-logo-img{width:min(230px,calc(100vw - 160px))}.navlinks{display:none}.mobile-menu{display:inline-flex}.lang{margin-left:auto}.hero{padding:78px 0 76px;min-height:0}.hero-grid,.split,.split.reverse,.grid-head,.visit-grid,.review-hero-grid,.review-intro{grid-template-columns:1fr;gap:34px}.visual-stack{min-height:0}.hero-card-clean{position:relative;width:100%}.hero-card img,.hero-card-clean img{height:460px}.trust-strip,.proof-strip{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2),.proof-strip div:nth-child(2){border-right:0}.trust-item:nth-child(1),.trust-item:nth-child(2),.proof-strip div:nth-child(1),.proof-strip div:nth-child(2){border-bottom:1px solid var(--line)}.service-grid,.portfolio-grid,.review-grid,.review-page-grid,.signal-grid,.guide-grid,.cards{grid-template-columns:1fr}.portrait img,.visit-photo img{height:460px}.route-hero{padding:92px 0 48px}.footer-dark{padding:76px 0 132px}.footer-dark-details{grid-template-columns:1fr 1fr;border-bottom:0}.footer-dark-details>div{border-bottom:1px solid rgba(248,244,238,.18)}.footer-dark-details>div:nth-child(2n){border-right:0}.footer-dark-wordmark{letter-spacing:.16em}.footer-dark-monogram{width:78px}}@media(max-width:620px){.brand-logo-img{width:min(210px,calc(100vw - 122px))}.display{font-size:clamp(54px,17vw,72px)}.route-title{font-size:clamp(42px,14vw,64px)}.big-title{font-size:clamp(40px,13vw,62px)}.hero-card img,.hero-card-clean img{height:390px}.trust-strip,.proof-strip{grid-template-columns:1fr}.trust-item,.proof-strip div{border-right:0}.trust-item:not(:last-child),.proof-strip div:not(:last-child){border-bottom:1px solid var(--line)}.footer-dark-details{grid-template-columns:1fr}.footer-dark-details>div{border-right:0}.footer-dark-links{display:grid;grid-template-columns:1fr 1fr}.footer-dark-links a{width:100%}.footer-dark-wordmark{font-size:22px;letter-spacing:.12em}.visit-action-row{display:grid;grid-template-columns:1fr}.visit-action-row .btn{width:100%}.mobile-panel nav a{font-size:32px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto;animation-duration:.001ms;animation-iteration-count:1;transition-duration:.001ms}}

.atelier-index{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;background:rgba(255,255,255,.36)}.atelier-index a{padding:26px;border-right:1px solid var(--line);min-height:170px}.atelier-index a:last-child{border-right:0}.atelier-index strong{display:block;font-family:var(--serif);font-size:42px;line-height:1;color:var(--deep)}.atelier-index span{display:block;margin-top:18px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:800}.atelier-index p{color:var(--muted);line-height:1.55;margin-bottom:0}.step-grid,.note-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step-grid article,.note-grid article,.faq-list details{padding:28px;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.38)}.step-grid span{display:inline-flex;margin-bottom:18px;font-family:var(--serif);font-size:34px;color:var(--taupe)}.step-grid h3,.note-grid h3,.faq-list summary{font-family:var(--serif);font-size:28px;line-height:1.05;letter-spacing:-.03em}.step-grid p,.note-grid p,.faq-list p{color:var(--muted);line-height:1.7}.cards-two{grid-template-columns:repeat(2,1fr)}.center-panel{text-align:center}.center-panel .lead{margin-left:auto;margin-right:auto}.center-row{justify-content:center}.faq-list{display:grid;gap:14px}.faq-list details{cursor:pointer}.faq-list summary{cursor:pointer}.faq-list p{margin-bottom:0}.footer-dark-nav{display:grid;gap:14px;justify-items:center}.footer-dark-nav>span{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(248,244,238,.62);font-weight:800}.footer-dark-nav div{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:center;max-width:920px}.footer-dark-nav a{color:rgba(248,244,238,.88);font-size:12px}.final-booking{padding-bottom:24px}.route-hero{padding-top:118px}.topbar .brand-logo-img{max-height:46px;object-fit:contain}
@media(max-width:980px){.atelier-index,.step-grid,.note-grid,.cards-two{grid-template-columns:1fr 1fr}.atelier-index a:nth-child(2n){border-right:0}.atelier-index a:nth-child(n+3){border-top:1px solid var(--line)}}@media(max-width:620px){.atelier-index,.step-grid,.note-grid,.cards-two{grid-template-columns:1fr}.atelier-index a{border-right:0}.atelier-index a:not(:first-child){border-top:1px solid var(--line)}}

.hero-quote{font-family:var(--serif);font-size:clamp(24px,2.4vw,36px);line-height:1.1;color:var(--deep);letter-spacing:-.03em;margin:18px 0 0;max-width:620px}
.note-grid-six{grid-template-columns:repeat(3,1fr)}
.note-kicker{display:inline-flex;margin-bottom:14px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:rgba(255,255,255,.38)}
.note-subtitle{font-weight:700;color:var(--deep)}
.faq-list-expanded details{padding:30px 32px}
.faq-list-expanded summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:22px}
.faq-list-expanded summary::-webkit-details-marker{display:none}
.faq-list-expanded summary::after{content:"+";font-family:var(--sans);font-size:22px;color:var(--muted);line-height:1}
.faq-list-expanded details[open] summary::after{content:"-"}
@media(max-width:980px){.note-grid-six{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.note-grid-six{grid-template-columns:1fr}.hero-quote{font-size:26px}}

:root{--champagne:#d9c9ba;--ink-soft:rgba(23,23,23,.78);--dark-line:rgba(248,244,238,.20)}
body{font-feature-settings:"kern" 1,"liga" 1;}
.hero-copy,.lead,.service-card p,.work-card p,.guide-card p,.panel p,.review p,.signal-card p,.article p{color:var(--ink-soft)}
.display,.big-title,.route-title{font-optical-sizing:auto;text-wrap:balance}.hero-copy,.lead,.quote,.service-card p,.work-card p,.guide-card p{text-wrap:pretty}
.route-map-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.42),rgba(255,250,243,.22));box-shadow:0 18px 70px rgba(41,34,28,.055)}
.route-map-card{min-height:210px;padding:26px 20px;border-right:1px solid var(--line);display:grid;align-content:space-between;gap:18px;transition:background .22s ease,transform .22s ease}
.route-map-card:last-child{border-right:0}.route-map-card:hover{background:rgba(255,255,255,.56);transform:translateY(-2px)}
.route-map-card strong{font-family:var(--serif);font-size:42px;line-height:1;color:var(--deep);font-weight:500}.route-map-card h3{font-family:var(--serif);font-size:28px;line-height:1.02;margin:0;letter-spacing:-.035em}.route-map-card p{font-size:13px;line-height:1.65;color:var(--muted);margin:0}.route-map-card span{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--muted)}
.principle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.principle-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:30px;background:rgba(255,255,255,.38);box-shadow:var(--shadow-soft)}.principle-card span{display:block;margin-bottom:18px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--muted)}.principle-card h3{font-family:var(--serif);font-size:32px;line-height:1.02;letter-spacing:-.035em;margin:0 0 14px}.principle-card p{line-height:1.7;color:var(--muted)}
.editorial-callout{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.46),rgba(232,222,211,.34));}.editorial-callout::after{content:"";position:absolute;right:-90px;top:-120px;width:360px;height:360px;border:1px solid rgba(42,36,30,.08);border-radius:50%;pointer-events:none}.callout-line{font-family:var(--serif);font-size:clamp(34px,4.2vw,62px);line-height:1;letter-spacing:-.045em;margin:0;color:var(--deep)}
.choice-matrix{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.choice-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:28px;background:rgba(255,255,255,.40)}.choice-card span{display:inline-flex;margin-bottom:16px;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--muted);background:rgba(255,255,255,.36)}.choice-card h3{font-family:var(--serif);font-size:30px;letter-spacing:-.035em;line-height:1.02;margin:0 0 12px}.choice-card p{color:var(--muted);line-height:1.7;margin:0}.work-language{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.work-language div{padding:24px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.36)}.work-language strong{display:block;font-family:var(--serif);font-size:27px;margin-bottom:10px}.work-language span{font-size:13px;color:var(--muted);line-height:1.65}.standards-seal{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}.seal-card{border:1px solid var(--line);border-radius:var(--radius-md);padding:32px;background:rgba(255,255,255,.42)}.seal-card h3{font-family:var(--serif);font-size:34px;line-height:1;letter-spacing:-.035em;margin:0 0 14px}.seal-card p{color:var(--muted);line-height:1.75}.visit-actions-lux{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.visit-actions-lux a{border:1px solid var(--line);border-radius:24px;padding:22px;background:rgba(255,255,255,.38)}.visit-actions-lux strong{display:block;font-family:var(--serif);font-size:28px;line-height:1.05;margin-bottom:8px}.visit-actions-lux span{color:var(--muted);font-size:13px;line-height:1.6}.footer-dark{background:radial-gradient(circle at 50% -25%,rgba(217,201,186,.14),transparent 38%),linear-gradient(180deg,#1c1917,#0b0a09)}.footer-dark-tagline{text-transform:none;font-family:var(--serif);font-size:26px;letter-spacing:-.02em;font-weight:500;color:rgba(248,244,238,.88)}.footer-dark-links a{letter-spacing:.12em}.topbar .brand-logo-img{filter:none}.navlinks{gap:18px}.navlinks a{letter-spacing:.01em}.nav-cta{background:var(--deep);color:#fff;border-color:var(--deep)}
@media(max-width:1180px){.route-map-grid{grid-template-columns:repeat(4,1fr)}.route-map-card:nth-child(4){border-right:0}.route-map-card:nth-child(n+5){border-top:1px solid var(--line)}.principle-grid,.choice-matrix,.work-language{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.route-map-grid{grid-template-columns:repeat(2,1fr)}.route-map-card:nth-child(2n){border-right:0}.route-map-card:nth-child(n+3){border-top:1px solid var(--line)}.standards-seal,.visit-actions-lux{grid-template-columns:1fr}.principle-grid,.choice-matrix,.work-language{grid-template-columns:1fr}}
@media(max-width:620px){.route-map-grid{grid-template-columns:1fr}.route-map-card{border-right:0}.route-map-card:not(:first-child){border-top:1px solid var(--line)}.route-map-card{min-height:160px}.callout-line{font-size:38px}.footer-dark-tagline{font-size:22px}}

.article-guide{max-width:900px}.article-intro{font-size:20px;line-height:1.85;color:var(--deep)}.article-cta{margin-top:58px;padding:34px 38px}.article-cta h2{margin-top:0}.google-verify-panel{background:linear-gradient(135deg,rgba(255,255,255,.56),rgba(255,250,243,.28))}.footer-dark-details span{margin-bottom:10px}.footer-dark-details strong{letter-spacing:.01em}.footer-dark-links a{text-transform:none;letter-spacing:.08em}.footer-dark-links a::first-letter{text-transform:uppercase}@media(max-width:620px){.article h2{font-size:30px}.article-cta{padding:28px 24px}}

.route-map-grid{grid-template-columns:repeat(auto-fit,minmax(138px,1fr))}
.navlinks{gap:14px}.navlinks a{white-space:nowrap}.topbar .brand-logo-img{width:clamp(190px,16vw,270px)}
.bridal-hero{background:linear-gradient(135deg,rgba(255,255,255,.52),rgba(232,222,211,.28));position:relative;overflow:hidden}.bridal-hero:after{content:"";position:absolute;right:-110px;bottom:-150px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(42,36,30,.08);pointer-events:none}.bridal-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:46px;align-items:center}.bridal-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bridal-image-grid figure{margin:0;position:relative;border-radius:32px;overflow:hidden;background:var(--taupe-soft);box-shadow:var(--shadow-soft)}.bridal-image-grid img{width:100%;height:360px;object-fit:cover}.bridal-image-grid figure:first-child{grid-row:span 2}.bridal-image-grid figure:first-child img{height:736px}.bridal-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.bridal-timeline article,.bridal-card,.wedding-signal{border:1px solid var(--line);border-radius:var(--radius-md);padding:30px;background:rgba(255,255,255,.40);box-shadow:0 8px 34px rgba(41,34,28,.035)}.bridal-timeline span,.bridal-card span,.wedding-signal span{display:inline-flex;margin-bottom:18px;border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:800;background:rgba(255,255,255,.38)}.bridal-timeline h3,.bridal-card h3,.wedding-signal h3{font-family:var(--serif);font-size:32px;line-height:1.03;letter-spacing:-.035em;margin:0 0 14px}.bridal-timeline p,.bridal-card p,.wedding-signal p{color:var(--muted);line-height:1.75;margin:0}.bridal-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.bridal-callout{border:1px solid var(--line);border-radius:var(--radius-lg);padding:44px;background:linear-gradient(135deg,rgba(255,255,255,.58),rgba(232,222,211,.32));box-shadow:var(--shadow-soft)}.bridal-callout .callout-line{max-width:880px}.wedding-signal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.mini-proof{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;background:rgba(255,255,255,.40);margin-top:28px}.mini-proof div{padding:22px;border-right:1px solid var(--line)}.mini-proof div:last-child{border-right:0}.mini-proof strong{display:block;font-family:var(--serif);font-size:34px;line-height:1}.mini-proof span{display:block;margin-top:8px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-weight:800}.bridal-note{font-family:var(--serif);font-size:clamp(27px,3vw,46px);line-height:1.08;letter-spacing:-.035em;color:var(--deep)}.article-checklist{display:grid;gap:12px;margin:28px 0}.article-checklist li{list-style:none;border:1px solid var(--line);border-radius:18px;padding:16px 18px;background:rgba(255,255,255,.36);color:var(--ink-soft);line-height:1.65}.article-checklist li:before{content:"•";margin-right:10px;color:var(--taupe);font-weight:800}.footer-dark-nav div{max-width:980px}.footer-dark-nav a{line-height:1.6}@media(max-width:1100px){.bridal-grid{grid-template-columns:1fr}.bridal-image-grid figure:first-child img{height:420px}.bridal-card-grid,.bridal-timeline,.wedding-signal-grid,.mini-proof{grid-template-columns:1fr 1fr}}@media(max-width:700px){.bridal-card-grid,.bridal-timeline,.wedding-signal-grid,.mini-proof,.bridal-image-grid{grid-template-columns:1fr}.bridal-image-grid figure:first-child{grid-row:auto}.bridal-image-grid img,.bridal-image-grid figure:first-child img{height:340px}.mini-proof div{border-right:0;border-top:1px solid var(--line)}.mini-proof div:first-child{border-top:0}.navlinks{gap:12px}}

:root{--max-reading:72ch;--veil:rgba(255,255,255,.50)}
.route-map-expanded{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.route-map-expanded .route-map-card{min-height:196px}.route-map-ceiling .lead{max-width:700px}.editorial-signature{position:relative;overflow:hidden}.editorial-signature:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.42);border-radius:32px;pointer-events:none}.article-guide p{max-width:var(--max-reading)}.article-guide h2{margin-top:46px}.article-guide .article-intro{max-width:800px}.bridal-hero .route-title{max-width:900px}.bridal-note{max-width:820px;margin:30px 0 0}.wedding-signal-grid .wedding-signal,.bridal-timeline article{min-height:245px}.footer-dark-details a{border-bottom:1px solid rgba(248,244,238,.28)}.footer-dark-links a:hover,.footer-dark-details a:hover{color:#fff}.service-card .best{background:rgba(255,255,255,.20);border-radius:18px;padding:18px;margin-top:18px;border:1px solid rgba(42,36,30,.08)}@media(max-width:860px){.topbar .brand-logo-img{width:190px}.nav{height:80px}.route-map-expanded .route-map-card{min-height:158px}.bridal-note{font-size:30px}.trust-strip,.proof-strip{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2),.proof-strip div:nth-child(2){border-right:0}.trust-item:nth-child(n+3),.proof-strip div:nth-child(n+3){border-top:1px solid var(--line)}}

.home-route-compact .route-map-grid{grid-template-columns:repeat(6,1fr)}
.home-route-compact .route-map-card{min-height:178px}
.service-grid-four{grid-template-columns:repeat(4,1fr)}
@media(max-width:1120px){.home-route-compact .route-map-grid,.service-grid-four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){
  body.menu-open{overflow:hidden}
  .topbar{z-index:300}
  .mobile-panel[hidden]{display:none}
  .mobile-panel{display:block;overflow-y:auto;overscroll-behavior:contain;background:rgba(248,244,238,.985);backdrop-filter:blur(22px);padding:14px 0 34px}
  .mobile-panel-inner{min-height:100dvh;align-content:start;gap:18px}
  .mobile-close{justify-self:end;width:44px;height:44px;line-height:1;font-size:26px;background:#fffaf3}
  .mobile-panel nav{display:grid;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .mobile-panel nav a:not(.mobile-book){font-family:var(--sans);font-size:15px;line-height:1.1;letter-spacing:.10em;text-transform:uppercase;padding:15px 2px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--deep)}
  .mobile-panel nav a:not(.mobile-book)::after{content:'›';font-family:var(--serif);font-size:24px;color:rgba(41,34,28,.35)}
  .mobile-panel nav a:last-child{border-bottom:0}
  .mobile-book{width:100%;justify-content:center;text-align:center;margin-top:20px;padding:16px 20px;background:var(--deep);color:#fff;border-radius:999px;font-family:var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
}
@media(max-width:620px){
  .shell{width:min(100% - 28px,620px)}
  .nav{height:68px;gap:8px}
  .brand-logo-img,.topbar .brand-logo-img{width:min(152px,calc(100vw - 164px))}
  .lang,.mobile-menu{padding:8px 10px;font-size:12px;letter-spacing:.02em}
  .hero{padding:52px 0 56px}
  .display{font-size:clamp(52px,16vw,76px);line-height:.88;margin-bottom:22px}
  .hero-copy,.lead{font-size:16px;line-height:1.62}
  .button-row{gap:10px}.button-row .btn{width:100%}
  .section{padding:64px 0}.section-tight{padding:54px 0}
  .grid-head{margin-bottom:30px}.big-title{font-size:clamp(36px,12vw,54px)}
  .home-route-compact .route-map-grid,.service-grid-four{grid-template-columns:1fr}
  .home-route-compact .route-map-card{min-height:auto;padding:22px 20px}
  .home-route-compact .lead{font-size:15px}
  .service-card,.panel,.review,.guide-card{padding:24px}
  .quote{font-size:22px}.review-large{min-height:auto}
  .work-card img{height:310px}.portrait img,.visit-photo img{height:360px}
}

@media(max-width:980px){
  .mobile-panel{padding:18px 0 42px;background:linear-gradient(180deg,rgba(248,244,238,.992),rgba(244,238,230,.985));}
  .mobile-panel-inner{min-height:100dvh;align-content:start;gap:18px;}
  .mobile-panel nav{border:0;gap:24px;}
  .mobile-menu-group{display:grid;gap:0;border-top:1px solid var(--line);}
  .mobile-menu-group-title{display:block;padding:18px 2px 10px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:800;}
  .mobile-panel nav a:not(.mobile-book){font-family:var(--sans);font-size:14px;line-height:1.1;letter-spacing:.08em;text-transform:uppercase;padding:14px 2px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--deep);}
  .mobile-panel nav a:not(.mobile-book)::after{content:'›';font-family:var(--serif);font-size:22px;color:rgba(41,34,28,.35);}
  .mobile-book{margin-top:0;width:100%;justify-content:center;text-align:center;padding:17px 20px;background:var(--deep);color:#fff;border-radius:999px;font-family:var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;}
}
.home-route-compact .lead{max-width:620px;}
.home-route-compact .route-map-card em{font-size:13px;line-height:1.55;}
.footer-dark-details strong a{display:inline-block;}

.mobile-menu-brand{display:grid;justify-items:center;text-align:center;gap:8px;padding:4px 0 10px;color:var(--deep)}
.mobile-menu-brand img{width:54px;height:auto;opacity:.92}
.mobile-menu-brand span{font-family:var(--serif);font-size:20px;letter-spacing:.18em;text-transform:uppercase;line-height:1.05}
.mobile-menu-brand em{font-style:normal;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:800}
.hero-quote{font-family:var(--serif);font-size:clamp(24px,3vw,34px);line-height:1.08;letter-spacing:-.025em;color:var(--deep);margin:22px 0 0}
.footer-dark-links a{margin:2px}
@media(max-width:980px){
  .mobile-panel nav{gap:18px}
  .mobile-panel-inner{gap:14px}
  .mobile-menu-group-title{padding:14px 2px 8px}
  .mobile-panel nav a:not(.mobile-book){padding:13px 2px}
  .mobile-book{margin-top:2px}
  .grid-head{align-items:start}
}
@media(max-width:620px){
  html{scroll-padding-top:72px}
  .shell{width:min(100% - 26px,620px)}
  .nav{height:64px}
  .brand-logo-img,.topbar .brand-logo-img{width:min(168px,calc(100vw - 132px))}
  .lang,.mobile-menu{padding:8px 9px;font-size:11px;letter-spacing:.01em}
  .hero{padding:42px 0 44px}
  .display{font-size:clamp(46px,15.5vw,64px);line-height:.9;letter-spacing:-.05em;margin:14px 0 18px}
  .hero-copy{font-size:15px;line-height:1.55;max-width:34rem}
  .hero-quote{font-size:25px;margin-top:18px}
  .button-row{margin-top:22px}
  .trust-strip{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:22px;margin-top:26px}
  .trust-item{min-height:86px;padding:16px 14px;border-right:1px solid var(--line)}
  .trust-item:nth-child(2n){border-right:0}
  .trust-item:nth-child(n+3){border-top:1px solid var(--line)}
  .trust-value{font-size:31px}
  .trust-label{font-size:9px;letter-spacing:.1em;line-height:1.25}
  .visual-stack{margin-top:6px}
  .hero-card,.hero-card-clean{border-radius:30px}
  .hero-card img,.hero-card-clean img{height:330px}
  .hero-card::after,.hero-card-clean::after{inset:10px;border-radius:23px}
  .image-label{font-size:9px;padding:8px 11px;top:12px;left:12px;letter-spacing:.12em}
  .section{padding:56px 0}.section-tight{padding:50px 0}
  .grid-head{gap:16px;margin-bottom:24px}
  .big-title{font-size:clamp(34px,11.5vw,52px);line-height:.98}
  .lead{font-size:15px;line-height:1.58}
  .home-route-compact .route-map-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .home-route-compact .route-map-card{min-height:0;padding:17px 14px;border-radius:22px}
  .home-route-compact .route-map-card span{font-size:10px;margin-bottom:12px}
  .home-route-compact .route-map-card strong{font-size:20px;line-height:1.05}
  .home-route-compact .route-map-card em{display:none}
  .service-card,.panel,.review,.guide-card{padding:22px;border-radius:24px}
  .service-card h3,.work-card h3,.guide-card h3{font-size:25px}
  .service-card p,.work-card p,.guide-card p,.panel p{line-height:1.58}
  .best{font-size:13px;line-height:1.55;padding:14px;margin-top:14px}
  .portfolio-grid,.review-page-grid,.guide-grid{gap:14px}
  .work-card img{height:284px}
  .portrait img,.visit-photo img{height:335px}
  .quote{font-size:21px;line-height:1.3}
  .footer-dark{margin-top:62px;padding:64px 0 72px}
  .footer-dark-details>div{padding:20px 14px}
  .footer-dark-links{grid-template-columns:1fr 1fr;gap:8px}
  .footer-dark-links a{min-height:40px;padding:10px 12px;font-size:10px;letter-spacing:.11em}
}
@media(max-width:380px){
  .home-route-compact .route-map-grid{grid-template-columns:1fr}
  .brand-logo-img,.topbar .brand-logo-img{width:min(154px,calc(100vw - 124px))}
  .display{font-size:46px}
}

.navlinks{gap:18px;}
.navlinks>a[href*="atelier"],.navlinks>a[href*="standards"],.navlinks>a[href*="reviews"],.navlinks>a[href*="faq"],.navlinks>a[href*="policies"],.navlinks>a[href*="privacy"]{display:none;}
.nav-more{position:relative;display:inline-flex;align-items:center;}
.nav-more summary{list-style:none;cursor:pointer;position:relative;padding-block:8px;color:rgba(23,23,23,.70);}
.nav-more summary::-webkit-details-marker{display:none;}
.nav-more summary::after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-3px) rotate(45deg);opacity:.55;}
.nav-more[open] summary,.nav-more summary:hover{color:var(--ink);}
.nav-more summary[aria-current="page"]{color:var(--ink);}
.nav-more summary[aria-current="page"]::before{content:"";position:absolute;left:0;right:14px;bottom:0;height:1px;background:var(--deep);opacity:.55;}
.nav-more-menu{position:absolute;right:0;top:calc(100% + 14px);min-width:210px;padding:12px;border:1px solid var(--line);border-radius:22px;background:rgba(255,250,243,.96);box-shadow:0 24px 70px rgba(41,34,28,.12);backdrop-filter:blur(18px);display:grid;gap:2px;}
.nav-more-menu a{display:flex;padding:11px 12px;border-radius:14px;white-space:nowrap;color:var(--deep);}
.nav-more-menu a:hover,.nav-more-menu a[aria-current="page"]{background:rgba(232,222,211,.48);}

.footer-dark{background:radial-gradient(circle at 50% -20%,rgba(217,201,186,.13),transparent 38%),linear-gradient(180deg,#1c1917,#0b0a09);}
.footer-dark-tagline{text-transform:none;font-family:var(--serif);font-size:26px;letter-spacing:-.02em;font-weight:500;color:rgba(248,244,238,.88);}
.footer-dark-details a{border-bottom:1px solid rgba(248,244,238,.28);}
.footer-link-separator{display:none;}
.footer-dark-links{width:100%;margin-inline:auto;}
.footer-dark-links a{text-transform:none;}
.footer-link-icon{object-fit:contain;display:block;}

@media(max-width:980px){
  .nav-more{display:none;}
  .mobile-panel[hidden]{display:none;}
  .mobile-panel{position:fixed;inset:0;z-index:9999;width:100vw;min-height:100dvh;overflow-y:auto;overscroll-behavior:contain;background:linear-gradient(180deg,rgba(248,244,238,.997),rgba(242,234,224,.992));backdrop-filter:blur(24px);padding:calc(16px + env(safe-area-inset-top)) 0 calc(36px + env(safe-area-inset-bottom));}
  .mobile-panel.is-open{display:block;}
  .mobile-panel-inner{width:min(100% - 30px,620px);margin-inline:auto;min-height:auto;display:grid;gap:16px;align-content:start;}
  .mobile-close{position:sticky;top:10px;z-index:2;justify-self:end;background:rgba(255,250,243,.94);box-shadow:0 14px 40px rgba(41,34,28,.09);}
  .mobile-panel nav{display:grid;gap:16px;padding-bottom:26px;}
  .mobile-menu-group{display:grid;border-top:1px solid var(--line);}
  .mobile-menu-group-title{padding:13px 2px 7px;}
  .mobile-panel nav a:not(.mobile-book){display:flex;padding:12px 2px;font-size:13px;letter-spacing:.075em;}
  .guide-grid .guide-card:nth-child(n+4),.review-page-grid .review:nth-child(n+4){display:none;}
}

@media(max-width:760px){
  .hero-grid{grid-template-columns:1fr;gap:24px;align-items:start;}
  .visual-stack{min-height:0;width:100%;margin-top:24px;overflow:visible;}
  .hero-card-clean{position:relative;top:auto;right:auto;left:auto;width:100%;max-width:100%;margin-inline:auto;transform:none;}
  .hero-card-clean img,.hero-card img{width:100%;height:clamp(310px,78vw,430px);object-fit:cover;object-position:center center;}
  .hero-card-clean::after,.hero-card::after{inset:10px;border-radius:24px;}
  .home-path-lite{padding-block:56px 48px;}
  .home-path-lite .grid-head{display:block;margin-bottom:24px;}
  .home-path-lite .big-title{font-size:clamp(38px,11.5vw,52px);max-width:10.5em;}
  .home-path-lite .lead{display:none;}
  .home-path-lite .route-map-grid,.route-map-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;}
  .home-path-lite .route-map-card,.route-map-compact .route-map-card{min-height:104px;padding:17px 15px;border-radius:26px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(42,36,30,.095);background:linear-gradient(145deg,rgba(255,255,255,.48),rgba(255,250,243,.22));box-shadow:0 14px 42px rgba(41,34,28,.045);}
  .home-path-lite .route-map-card span,.route-map-compact .route-map-card span{font-size:10px;letter-spacing:.16em;color:rgba(41,34,28,.48);}
  .home-path-lite .route-map-card strong,.route-map-compact .route-map-card strong{font-size:25px;line-height:1;font-family:var(--serif);letter-spacing:-.03em;}
  .home-path-lite .route-map-card em,.route-map-compact .route-map-card em{display:none;}
  .visit-grid .visit-photo,.visit-photo{width:100%;max-width:min(100%,540px);justify-self:center;margin-inline:auto;border-radius:36px;overflow:hidden;}
  .visit-grid .visit-photo img,.visit-photo img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center center;}
}

@media(max-width:390px){
  .home-path-lite .route-map-grid,.route-map-compact{gap:10px;}
  .home-path-lite .route-map-card,.route-map-compact .route-map-card{min-height:96px;padding:15px 13px;border-radius:24px;}
  .home-path-lite .route-map-card strong,.route-map-compact .route-map-card strong{font-size:22px;}
}

@media(max-width:360px){
  .home-path-lite .route-map-grid,.route-map-compact{grid-template-columns:1fr;}
}

@media(max-width:700px){
  .section,.section-tight{padding-block:64px;}
  .service-card,.panel,.review,.guide-card,.work-card,.route-map-card,.choice-card,.signal-card,.seal-card{border-color:rgba(42,36,30,.095);box-shadow:0 14px 42px rgba(41,34,28,.045);}
  .footer-dark{margin-top:68px;padding:76px 0 calc(88px + env(safe-area-inset-bottom));}
  .footer-dark-brand{gap:10px;margin-bottom:2px;}
  .footer-dark-monogram{width:82px;}
  .footer-dark-wordmark{font-size:clamp(21px,6vw,28px);letter-spacing:.16em;}
  .footer-dark-tagline{max-width:300px;margin-inline:auto;font-size:22px;line-height:1.08;letter-spacing:-.02em;}
  .footer-dark-rule{margin:26px auto 30px;max-width:300px;}
  .footer-dark-details{grid-template-columns:1fr;border-top:1px solid rgba(248,244,238,.13);border-bottom:1px solid rgba(248,244,238,.13);}
  .footer-dark-details>div{padding:18px 12px;border-right:0;border-bottom:1px solid rgba(248,244,238,.13);}
  .footer-dark-details>div:last-child{border-bottom:0;}
  .footer-dark-details span{font-size:10px;letter-spacing:.18em;color:rgba(248,244,238,.58);}
  .footer-dark-details strong{font-size:13px;color:rgba(255,255,255,.95);}
  .footer-dark-nav{margin:34px auto 28px;}
  .footer-dark-nav span{letter-spacing:.22em;color:rgba(248,244,238,.54);}
  .footer-dark-nav div{gap:10px 14px;}
  .footer-dark-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-width:520px;margin:30px auto 0;align-items:stretch;justify-content:center;}
  .footer-dark-links a{position:relative;display:flex;min-height:118px;width:100%;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px 9px 15px;border-radius:30px;text-align:center;border:1px solid rgba(248,244,238,.16);background:radial-gradient(circle at 50% 0%,rgba(255,250,243,.068),transparent 58%),linear-gradient(180deg,rgba(255,255,255,.042),rgba(255,255,255,.016));box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 16px 32px rgba(0,0,0,.15);color:rgba(248,244,238,.91);font-size:11px;font-weight:800;letter-spacing:.12em;white-space:normal;}
  .footer-dark-links a::before{content:"";position:absolute;inset:9px;border:1px solid rgba(217,201,186,.07);border-radius:24px;pointer-events:none;}
  .footer-dark-links a::after{content:"";position:absolute;left:50%;bottom:12px;width:20px;height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(217,201,186,.48),transparent);}
  .footer-link-icon{width:50px;height:50px;flex:none;padding:0;border-radius:16px;background:rgba(255,250,243,.88);box-shadow:0 9px 22px rgba(0,0,0,.17),inset 0 0 0 1px rgba(217,201,186,.38);}
  .footer-dark-links a span{display:block;text-align:center;line-height:1.1;letter-spacing:.12em;font-size:11px;max-width:100%;white-space:normal;}
  .footer-dark-links a[href*="google.com"] span{letter-spacing:.07em;font-size:10.5px;}
}

@media(max-width:390px){
  .footer-dark-links{gap:11px;}
  .footer-dark-links a{min-height:112px;border-radius:27px;padding-inline:7px;}
  .footer-link-icon{width:46px;height:46px;border-radius:15px;}
  .footer-dark-links a span{font-size:10px;letter-spacing:.10em;}
  .footer-dark-links a[href*="google.com"] span{font-size:9.5px;letter-spacing:.055em;}
}

@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  body.mna-cursor-enabled,body.mna-cursor-enabled a,body.mna-cursor-enabled button,body.mna-cursor-enabled summary,body.mna-cursor-enabled [role="button"]{cursor:none;}
  body.mna-cursor-enabled input,body.mna-cursor-enabled textarea,body.mna-cursor-enabled select,body.mna-cursor-enabled [contenteditable="true"]{cursor:auto;}
  .mna-atelier-cursor{position:fixed;left:0;top:0;width:22px;height:22px;margin:-11px 0 0 -11px;z-index:9999;pointer-events:none;opacity:0;border:1px solid rgba(41,34,28,.68);border-radius:50%;background:rgba(248,244,238,.12);box-shadow:0 3px 14px rgba(41,34,28,.10);transform:translate3d(-120px,-120px,0) scale(.88);will-change:transform,opacity,width,height;transition:opacity .14s ease,width .18s ease,height .18s ease,margin .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;}
  .mna-atelier-cursor::after{content:"";position:absolute;left:50%;top:50%;width:3px;height:3px;border-radius:50%;background:rgba(41,34,28,.72);transform:translate(-50%,-50%);transition:transform .18s ease,opacity .18s ease;}
  .mna-atelier-cursor.is-visible{opacity:.92;}
  .mna-atelier-cursor.is-link{width:34px;height:34px;margin:-17px 0 0 -17px;border-color:rgba(41,34,28,.82);background:rgba(248,244,238,.34);box-shadow:0 7px 24px rgba(41,34,28,.13);}
  .mna-atelier-cursor.is-link::after{transform:translate(-50%,-50%) scale(.72);}
  .mna-atelier-cursor.is-visual{width:40px;height:40px;margin:-20px 0 0 -20px;border-color:rgba(118,105,94,.78);background:rgba(248,244,238,.20);}
  .mna-atelier-cursor.is-native{opacity:0;}
  .mna-atelier-cursor.is-pressed{width:18px;height:18px;margin:-9px 0 0 -9px;}
}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.mna-atelier-cursor{display:none!important;}}

@media(min-width:861px){
  .footer-dark{padding-top:98px;padding-bottom:106px;}
  .footer-dark-inner{max-width:1180px;}
  .footer-dark-brand{margin-bottom:34px;}
  .footer-dark-monogram{width:96px;height:auto;opacity:.92;}
  .footer-dark-wordmark{letter-spacing:.28em;}
  .footer-dark-tagline{margin-top:14px;letter-spacing:.02em;}
  .footer-dark-rule{margin:34px auto 42px;max-width:690px;}
  .footer-dark-details{display:grid;grid-template-columns:1.25fr 1.25fr 1fr 1.45fr .8fr;gap:0;border-top:1px solid rgba(248,244,238,.15);border-bottom:1px solid rgba(248,244,238,.15);padding:30px 0;}
  .footer-dark-details>div{padding:0 22px;border-right:1px solid rgba(248,244,238,.16);text-align:center;}
  .footer-dark-details>div:last-child{border-right:0;}
  .footer-dark-nav{margin:52px auto 34px;max-width:860px;}
  .footer-dark-nav span{letter-spacing:.28em;}
  .footer-dark-nav div{gap:18px 24px;}
  .footer-dark-links{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;max-width:1060px;margin:38px auto 0;align-items:stretch;justify-content:center;}
  .footer-dark-links a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;min-height:126px;padding:18px 12px 16px;border:1px solid rgba(248,244,238,.16);border-radius:27px;background:radial-gradient(circle at 50% 0%,rgba(255,250,243,.068),transparent 58%),linear-gradient(180deg,rgba(255,255,255,.046),rgba(255,255,255,.016));box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 18px 42px rgba(0,0,0,.16);text-align:center;color:rgba(248,244,238,.91);font-size:11px;letter-spacing:.135em;font-weight:800;white-space:normal;transform:translateZ(0);}
  .footer-dark-links a::before{content:"";position:absolute;inset:9px;border:1px solid rgba(217,201,186,.075);border-radius:22px;pointer-events:none;}
  .footer-dark-links a::after{content:none;}
  .footer-dark-links a:hover{background:radial-gradient(circle at 50% 0%,rgba(255,250,243,.11),transparent 62%),linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.026));border-color:rgba(248,244,238,.32);transform:translateY(-2px);}
  .footer-link-icon{width:52px;height:52px;flex:none;padding:0;border-radius:17px;background:rgba(255,250,243,.9);box-shadow:0 11px 24px rgba(0,0,0,.18),inset 0 0 0 1px rgba(217,201,186,.4);}
  .footer-dark-links a span{display:block;text-align:center;line-height:1.12;letter-spacing:.135em;font-size:11px;}
  .footer-dark-links a[href*="google.com"] span{letter-spacing:.08em;font-size:10.5px;}
  .home-path-lite{padding-top:82px;padding-bottom:76px;}
  .home-path-lite .grid-head{align-items:end;margin-bottom:34px;}
  .home-path-lite .big-title{max-width:700px;}
  .home-path-lite .lead{max-width:470px;font-size:18px;line-height:1.75;}
  .home-path-lite .route-map-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;border:0;}
  .home-path-lite .route-map-card{min-height:198px;padding:28px 26px;border:1px solid rgba(42,36,30,.105);border-radius:30px;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.62),rgba(255,255,255,.26) 58%,rgba(255,255,255,.12)),linear-gradient(180deg,rgba(255,250,243,.72),rgba(255,255,255,.28));box-shadow:0 18px 44px rgba(42,36,30,.055),inset 0 1px 0 rgba(255,255,255,.55);}
  .home-path-lite .route-map-card span{font-size:11px;letter-spacing:.22em;color:rgba(42,36,30,.48);}
  .home-path-lite .route-map-card strong{font-size:31px;line-height:1.02;}
  .home-path-lite .route-map-card em{display:block;margin-top:18px;max-width:190px;font-size:13px;line-height:1.6;color:rgba(42,36,30,.58);}
}

@media(min-width:861px) and (max-width:1120px){
  .footer-dark-links{grid-template-columns:repeat(3,minmax(0,1fr));max-width:760px;}
  .home-path-lite .route-map-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* V2.8.96 - Custom Cursor Removal / Visual Cleanup | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: removed the decorative custom cursor so no stray dash-like mark appears over service cards or screenshots. Native browser cursor restored. */

@media(min-width:861px){
  .hero{padding-top:124px;padding-bottom:104px;}
  .hero-grid{gap:72px;}
  .hero-copy{max-width:545px;}
  .section.home-service-preview{padding-top:96px;}
  .home-path-lite{padding-top:78px;padding-bottom:68px;}
  .home-path-lite .route-map-grid{grid-template-columns:1.15fr .95fr .95fr .95fr;gap:16px;}
  .home-path-lite .route-map-card{min-height:184px;border-radius:34px;}
  .home-path-lite .route-map-card:first-child{background:radial-gradient(circle at 80% 0%,rgba(255,255,255,.78),transparent 58%),linear-gradient(145deg,rgba(255,250,243,.86),rgba(232,222,211,.34));box-shadow:0 22px 58px rgba(41,34,28,.075),inset 0 1px 0 rgba(255,255,255,.68);}
  .home-booking-line{margin-top:18px;padding:15px 18px;border:1px solid rgba(42,36,30,.105);border-radius:999px;background:rgba(255,255,255,.38);display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:680px;}
  .home-booking-line span{font-family:var(--serif);font-size:22px;line-height:1;letter-spacing:-.025em;color:rgba(41,34,28,.78);}
  .home-booking-line a{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid rgba(41,34,28,.35);padding-bottom:3px;color:var(--deep);}
}
.footer-dark{background:radial-gradient(circle at 50% -18%,rgba(226,211,196,.16),transparent 40%),radial-gradient(circle at 0% 100%,rgba(169,154,140,.09),transparent 34%),linear-gradient(180deg,#1b1816,#090807);}
.footer-dark-inner{position:relative;}
.footer-dark::before{content:"";display:block;width:min(1120px,calc(100% - 48px));height:1px;margin:0 auto;background:linear-gradient(90deg,transparent,rgba(248,244,238,.18),transparent);}
.footer-dark-tagline{text-wrap:balance;}
.footer-dark-details{background:linear-gradient(180deg,rgba(255,255,255,.026),rgba(255,255,255,.008));}
.footer-dark-details strong{font-weight:600;}
.footer-dark-nav a{transition:color .18s ease,border-color .18s ease;}
.footer-action-link .footer-link-note{display:block;margin-top:-5px;font-size:9.5px;line-height:1.15;letter-spacing:.14em;text-transform:uppercase;color:rgba(248,244,238,.46);font-weight:700;}
.footer-action-link.footer-action-primary .footer-link-note{color:rgba(41,34,28,.66);}
.footer-action-link.footer-action-primary{background:linear-gradient(145deg,rgba(255,250,243,.96),rgba(226,211,196,.82));color:#211d19;border-color:rgba(255,250,243,.72);box-shadow:0 26px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.72);}
.footer-action-link.footer-action-primary::before{border-color:rgba(41,34,28,.105);}
.footer-action-link.footer-action-primary .footer-link-icon{background:rgba(41,34,28,.08);box-shadow:inset 0 0 0 1px rgba(41,34,28,.13);}
.footer-action-link.footer-action-primary span{color:#211d19;}
.footer-action-link.footer-action-visual{border-color:rgba(248,244,238,.24);}
.footer-action-link.footer-action-visual .footer-link-icon{background:rgba(255,250,243,.94);}
.footer-action-link.footer-action-utility{opacity:.92;}
@media(min-width:861px){
  .footer-dark{padding-top:104px;padding-bottom:112px;}
  .footer-dark-brand{margin-bottom:38px;}
  .footer-dark-monogram{width:90px;}
  .footer-dark-wordmark{letter-spacing:.31em;font-size:18px;}
  .footer-dark-tagline{font-size:29px;line-height:1.05;max-width:640px;margin-inline:auto;}
  .footer-dark-details{grid-template-columns:1.15fr 1.2fr .9fr 1.55fr .7fr;border-radius:34px;border:1px solid rgba(248,244,238,.14);padding:28px 8px;overflow:hidden;}
  .footer-dark-details>div{padding:0 20px;}
  .footer-dark-nav{margin-top:50px;margin-bottom:30px;}
  .footer-dark-links{grid-template-columns:1.14fr 1.34fr repeat(4,.88fr);gap:14px;max-width:1120px;}
  .footer-action-link{min-height:118px;border-radius:30px;}
  .footer-action-link.footer-action-primary{order:1;min-height:140px;margin-top:-11px;}
  .footer-action-link.footer-action-visual{order:2;}
  .footer-action-link.footer-action-utility{order:3;}
  .footer-action-link.footer-action-primary .footer-link-icon{width:58px;height:58px;border-radius:18px;}
  .footer-action-link.footer-action-primary span{font-size:12px;letter-spacing:.12em;}
  .footer-action-link.footer-action-primary:hover{transform:translateY(-3px);box-shadow:0 30px 78px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.78);}
}
@media(max-width:860px){
  .home-path-lite{padding-block:50px 44px;}
  .home-path-lite .grid-head{margin-bottom:20px;}
  .home-path-lite .big-title{max-width:9.8em;}
  .home-path-lite .route-map-grid,.route-map-compact{gap:10px;}
  .home-path-lite .route-map-card,.route-map-compact .route-map-card{min-height:92px;border-radius:25px;padding:15px 14px;}
  .home-path-lite .route-map-card:first-child{background:linear-gradient(145deg,rgba(255,250,243,.74),rgba(232,222,211,.27));}
  .home-path-lite .route-map-card strong,.route-map-compact .route-map-card strong{font-size:22px;}
  .home-booking-line{margin-top:12px;border:1px solid rgba(42,36,30,.105);border-radius:26px;background:rgba(255,255,255,.38);padding:14px 15px;display:flex;align-items:center;justify-content:space-between;gap:14px;}
  .home-booking-line span{font-family:var(--serif);font-size:18px;letter-spacing:-.025em;color:rgba(41,34,28,.78);}
  .home-booking-line a{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid rgba(41,34,28,.35);padding-bottom:3px;white-space:nowrap;color:var(--deep);}
  .footer-dark{padding-top:82px;padding-bottom:calc(94px + env(safe-area-inset-bottom));}
  .footer-dark-monogram{width:76px;}
  .footer-dark-wordmark{font-size:clamp(19px,5.7vw,25px);letter-spacing:.15em;}
  .footer-dark-tagline{font-size:23px;line-height:1.05;max-width:315px;}
  .footer-dark-details{border:1px solid rgba(248,244,238,.13);border-radius:28px;overflow:hidden;background:rgba(255,255,255,.02);}
  .footer-dark-details>div{padding:17px 13px;}
  .footer-dark-nav{margin-top:32px;margin-bottom:24px;}
  .footer-dark-links{grid-template-columns:1fr 1fr;gap:11px;max-width:540px;margin-top:26px;}
  .footer-action-link{min-height:102px;border-radius:26px;gap:9px;padding:14px 8px 13px;}
  .footer-action-link.footer-action-primary{grid-column:1/-1;min-height:96px;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon label" "icon note";justify-content:start;text-align:left;padding:16px 18px;column-gap:14px;}
  .footer-action-link.footer-action-primary .footer-link-icon{grid-area:icon;width:54px;height:54px;border-radius:17px;align-self:center;}
  .footer-action-link.footer-action-primary span{grid-area:label;text-align:left;font-size:13px;letter-spacing:.13em;align-self:end;}
  .footer-action-link.footer-action-primary .footer-link-note{grid-area:note;text-align:left;margin-top:4px;align-self:start;}
  .footer-action-link.footer-action-visual{grid-column:1/-1;min-height:92px;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon label" "icon note";justify-content:start;text-align:left;padding:15px 18px;column-gap:13px;}
  .footer-action-link.footer-action-visual .footer-link-icon{grid-area:icon;width:52px;height:52px;align-self:center;}
  .footer-action-link.footer-action-visual span{grid-area:label;text-align:left;align-self:end;}
  .footer-action-link.footer-action-visual .footer-link-note{grid-area:note;text-align:left;margin-top:4px;align-self:start;}
  .footer-action-link.footer-action-utility .footer-link-icon{width:44px;height:44px;border-radius:15px;}
  .footer-action-link.footer-action-utility span{font-size:10px;letter-spacing:.11em;}
}
@media(max-width:390px){
  .home-booking-line{display:block;}
  .home-booking-line a{display:inline-block;margin-top:8px;}
  .footer-dark-links{gap:10px;}
  .footer-action-link.footer-action-utility{min-height:96px;}
  .footer-action-link .footer-link-note{font-size:8.8px;letter-spacing:.105em;}
}

@media(min-width:861px){
  .footer-dark-links{grid-template-columns:1.34fr 1.08fr repeat(4,.86fr);gap:14px;}
  .footer-action-link.footer-action-primary,
  .footer-action-link.footer-action-visual,
  .footer-action-link.footer-action-utility{order:0;}
  .footer-action-link.footer-action-primary{min-height:140px;margin-top:-11px;}
  .footer-action-link.footer-action-visual{min-height:126px;}
}
@media(max-width:860px){
  .footer-dark-links{grid-template-columns:1fr 1fr;gap:11px;}
  .footer-action-link.footer-action-primary{order:0;grid-column:1/-1;}
  .footer-action-link.footer-action-visual{order:0;grid-column:1/-1;}
  .footer-action-link.footer-action-utility{order:0;}
}

@media(min-width:861px){
  .hero{min-height:auto;padding-top:116px;padding-bottom:94px;}
  .hero-grid{grid-template-columns:minmax(0,1.04fr) minmax(360px,.82fr);gap:78px;}
  .display{max-width:780px;}
  .hero-copy{max-width:520px;}
  .hero-card-clean{width:84%;}
  .hero-card-clean img,.hero-card img{height:590px;}
  .trust-strip{max-width:820px;margin-top:30px;border-radius:28px;}
  .trust-item{min-height:100px;padding:18px 20px;}
  .home-founder-note{padding-block:104px;}
  .home-founder-note .split{gap:66px;}
  .home-founder-note .portrait img{height:590px;object-position:center 44%;}
  .home-service-preview{padding-block:96px 104px;}
  .home-service-preview .grid-head{margin-bottom:42px;}
  .home-service-preview .service-grid-four{grid-template-columns:1.18fr repeat(3,1fr);gap:16px;}
  .home-service-preview .service-card{min-height:326px;padding:28px;border-radius:30px;}
  .home-service-preview .service-card:first-child{border-radius:34px;background:radial-gradient(circle at 82% 0%,rgba(255,255,255,.78),transparent 58%),linear-gradient(145deg,rgba(255,250,243,.78),rgba(232,222,211,.26));box-shadow:0 24px 62px rgba(41,34,28,.072),inset 0 1px 0 rgba(255,255,255,.62);}
  .home-work-preview{padding-block:104px;}
  .home-work-preview .grid-head{margin-bottom:46px;}
  .home-work-preview .portfolio-grid{grid-template-columns:1.12fr .94fr .94fr;gap:20px;}
  .home-work-preview .work-card:first-child img{height:390px;}
  .home-work-preview .work-card:not(:first-child) img{height:350px;}
  .home-bridal-preview{padding-block:104px;}
  .home-bridal-preview .bridal-grid{gap:58px;}
  .home-standards-preview{padding-block:82px;}
  .home-reviews-preview,.home-guides-preview{padding-block:96px;}
  .home-visit-preview{padding-top:104px;}
  .home-visit-preview .visit-grid{gap:58px;}
  .home-visit-preview .visit-photo img{height:500px;object-position:center center;}
}
@media(max-width:860px){
  .hero{min-height:auto;padding-top:34px;padding-bottom:42px;}
  .display{font-size:clamp(44px,14.2vw,62px);line-height:.92;margin-top:12px;margin-bottom:16px;}
  .hero-copy{max-width:30rem;font-size:15px;line-height:1.54;}
  .hero-quote{font-size:23px;margin-top:15px;}
  .hero-cta-row{margin-top:20px;gap:9px;}
  .hero-cta-row .btn{min-height:48px;padding-block:14px;}
  .trust-strip{margin-top:20px;border-radius:20px;background:rgba(255,255,255,.30);}
  .trust-item{min-height:76px;padding:14px 12px;}
  .trust-value{font-size:28px;}
  .trust-label{font-size:8.5px;letter-spacing:.095em;line-height:1.22;}
  .visual-stack{margin-top:18px;}
  .hero-card-clean img,.hero-card img{height:clamp(285px,70vw,380px);object-position:center 48%;}
  .home-path-lite{padding-block:44px 38px;}
  .home-path-lite .grid-head{margin-bottom:18px;}
  .home-path-lite .lead{font-size:14.5px;line-height:1.52;}
  .home-path-lite .route-map-card,.route-map-compact .route-map-card{min-height:84px;padding:14px 13px;border-radius:22px;}
  .home-path-lite .route-map-card strong,.route-map-compact .route-map-card strong{font-size:21px;}
  .home-booking-line{border-radius:22px;padding:12px 13px;}
  .home-booking-line span{font-size:17px;line-height:1.05;}
  .home-service-preview,.home-founder-note,.home-work-preview,.home-bridal-preview,.home-reviews-preview,.home-guides-preview,.home-visit-preview{padding-block:54px;}
  .home-standards-preview{padding-block:50px;}
  .home-service-preview .grid-head,.home-work-preview .grid-head{margin-bottom:22px;}
  .home-service-preview .service-grid-four{gap:12px;}
  .home-service-preview .service-card{padding:20px;border-radius:23px;}
  .home-service-preview .service-card:nth-child(n+3) .best{display:none;}
  .home-service-preview .service-meta{gap:6px;margin-bottom:14px;}
  .home-service-preview .pill{font-size:9px;padding:6px 8px;}
  .home-work-preview .work-body{padding:20px;}
  .home-work-preview .tag-row{gap:6px;margin-bottom:13px;}
  .home-work-preview .tag{font-size:9px;padding:6px 8px;}
  .home-bridal-preview .bridal-grid{gap:28px;}
  .home-bridal-preview .button-row .btn{width:100%;}
  .home-standards-preview .cards,.home-reviews-preview .review-page-grid,.home-guides-preview .guide-grid{gap:12px;}
  .home-standards-preview .panel,.home-reviews-preview .review,.home-guides-preview .guide-card{padding:20px;border-radius:23px;}
  .home-reviews-preview .quote{font-size:21px;line-height:1.32;}
  .home-visit-preview .visit-grid{gap:24px;}
  .home-visit-preview .visit-photo img{height:clamp(300px,76vw,390px);object-position:center center;}
  .footer-dark{margin-top:54px;}
  .footer-dark-links{margin-top:24px;}
  .footer-action-link.footer-action-primary,.footer-action-link.footer-action-visual{min-height:88px;}
  .footer-action-link.footer-action-utility{min-height:92px;}
}
@media(max-width:430px){
  .display{font-size:clamp(42px,13.8vw,58px);}
  .hero-card-clean img,.hero-card img{height:clamp(276px,72vw,340px);}
  .trust-item{min-height:72px;padding:13px 10px;}
  .trust-value{font-size:26px;}
  .section,.section-tight{padding-block:52px;}
  .home-path-lite{padding-block:40px 36px;}
  .home-service-preview,.home-founder-note,.home-work-preview,.home-bridal-preview,.home-reviews-preview,.home-guides-preview,.home-visit-preview{padding-block:50px;}
  .home-standards-preview{padding-block:48px;}
}

.home-standards-preview{position:relative;}
.home-standards-preview .shell{width:min(1080px,calc(100% - 56px));}
.standards-editorial-card{position:relative;display:grid;grid-template-columns:minmax(0,.86fr) minmax(430px,1fr);gap:52px;align-items:center;padding:48px;border:1px solid rgba(42,36,30,.105);border-radius:40px;background:radial-gradient(circle at 10% 0%,rgba(255,255,255,.72),transparent 44%),linear-gradient(135deg,rgba(255,255,255,.48),rgba(232,222,211,.22));box-shadow:0 26px 76px rgba(41,34,28,.065);overflow:hidden;}
.standards-editorial-card::before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.46);border-radius:30px;pointer-events:none;}
.standards-editorial-card::after{content:"";position:absolute;left:48px;bottom:34px;width:92px;height:1px;background:linear-gradient(90deg,rgba(41,34,28,.28),transparent);pointer-events:none;}
.standards-editorial-intro{position:relative;z-index:1;align-self:start;max-width:420px;padding-top:4px;}
.standards-editorial-intro .big-title{font-size:clamp(42px,4.6vw,64px);max-width:8.8em;}
.standards-editorial-intro .lead{margin:20px 0 0;font-size:16px;line-height:1.68;max-width:35rem;color:rgba(41,34,28,.64);}
.standards-inline-link{display:inline-flex;align-items:center;gap:10px;margin-top:28px;border-bottom:1px solid rgba(41,34,28,.26);padding-bottom:7px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--deep);}
.standards-inline-link::after{content:"→";font-family:var(--serif);font-size:17px;line-height:1;color:rgba(41,34,28,.46);}
.standards-editorial-list{position:relative;z-index:1;display:grid;border-top:1px solid rgba(42,36,30,.11);border-bottom:1px solid rgba(42,36,30,.11);}
.standards-editorial-list article{display:grid;grid-template-columns:58px minmax(0,1fr);gap:24px;padding:26px 0;border-top:1px solid rgba(42,36,30,.09);}
.standards-editorial-list article:first-child{border-top:0;}
.standards-editorial-list span{font-family:var(--serif);font-size:32px;line-height:1;color:rgba(41,34,28,.32);letter-spacing:-.03em;}
.standards-editorial-list h3{margin:0 0 8px;font-size:19px;line-height:1.2;font-family:var(--sans);font-weight:800;letter-spacing:-.01em;color:rgba(23,23,23,.9);}
.standards-editorial-list p{margin:0;max-width:42rem;color:rgba(41,34,28,.62);line-height:1.68;font-size:15px;}
@media(min-width:1180px){.home-standards-preview{padding-block:72px 86px;}.standards-editorial-card{transform:translateX(-8px);}}
@media(max-width:980px){.home-standards-preview .shell{width:min(100% - 38px,720px);}.standards-editorial-card{grid-template-columns:1fr;gap:28px;padding:30px;border-radius:32px;}.standards-editorial-card::before{inset:12px;border-radius:24px;}.standards-editorial-card::after{display:none;}.standards-editorial-intro{max-width:100%;}.standards-editorial-intro .big-title{max-width:9em;}.standards-editorial-intro .lead{font-size:15px;line-height:1.58;margin-top:16px;}.standards-inline-link{margin-top:20px;}.standards-editorial-list article{grid-template-columns:44px minmax(0,1fr);gap:15px;padding:19px 0;}.standards-editorial-list span{font-size:25px;}.standards-editorial-list h3{font-size:17px;margin-bottom:6px;}.standards-editorial-list p{font-size:14px;line-height:1.58;}}
@media(max-width:430px){.home-standards-preview .shell{width:min(100% - 28px,620px);}.standards-editorial-card{padding:24px 20px;border-radius:28px;}.standards-editorial-card::before{display:none;}.standards-editorial-intro .big-title{font-size:clamp(36px,10.5vw,46px);}.standards-inline-link{font-size:10px;letter-spacing:.13em;}.standards-editorial-list article{grid-template-columns:1fr;gap:8px;padding:17px 0;}.standards-editorial-list span{font-size:20px;letter-spacing:.08em;font-family:var(--sans);font-weight:800;color:rgba(41,34,28,.36);}.standards-editorial-list h3{font-size:16px;}.standards-editorial-list p{font-size:13.5px;}}

.guides-index-section .guide-card{position:relative;overflow:hidden;}
.guides-index-section .guide-card h3{font-weight:500;}
.guides-index-section .guide-card p{max-width:32rem;}
@media(min-width:861px){
  .guides-route-hero{padding-top:86px;padding-bottom:42px;}
  .guides-index-section{padding-top:82px;padding-bottom:92px;}
  .guides-index-section .guide-grid{gap:16px;}
  .guides-index-section .guide-card{padding:28px 28px 30px;border-radius:29px;}
  .guides-index-section .guide-card h3{font-size:clamp(24px,2vw,29px);line-height:1.08;margin-bottom:12px;}
  .guides-index-section .guide-card p{font-size:15.5px;line-height:1.68;}
  .guides-notes-section{padding-top:86px;}
}
@media(max-width:860px){
  .guides-route-hero{padding-top:50px;padding-bottom:30px;}
  .guides-route-hero .eyebrow{margin-bottom:13px;}
  .guides-route-hero .route-title{font-size:clamp(43px,12vw,58px);line-height:.94;margin:10px 0 15px;}
  .guides-route-hero .lead{font-size:15.2px;line-height:1.58;max-width:31rem;}
  .guides-index-section{padding-top:44px;padding-bottom:54px;}
  .guides-index-section .guide-grid{gap:11px;}
  .guides-index-section .guide-card{padding:18px 18px 19px;border-radius:22px;background:rgba(255,255,255,.38);}
  .guides-index-section .guide-card:hover{transform:none;}
  .guides-index-section .guide-card h3{font-size:clamp(22px,6.8vw,27px);line-height:1.08;margin-bottom:8px;letter-spacing:-.028em;}
  .guides-index-section .guide-card p{font-size:13.8px;line-height:1.56;margin-top:0;}
  .guides-notes-section{padding-top:50px;}
}
@media(max-width:430px){
  .guides-route-hero{padding-top:42px;padding-bottom:24px;}
  .guides-route-hero .route-title{font-size:clamp(40px,11.4vw,52px);margin-bottom:12px;}
  .guides-route-hero .lead{font-size:14.4px;line-height:1.54;}
  .guides-index-section{padding-top:36px;padding-bottom:48px;}
  .guides-index-section .guide-grid{gap:10px;}
  .guides-index-section .guide-card{padding:16px 16px 17px;border-radius:20px;}
  .guides-index-section .guide-card h3{font-size:clamp(21px,6.5vw,25px);line-height:1.08;margin-bottom:7px;}
  .guides-index-section .guide-card p{font-size:13.4px;line-height:1.52;}
}

@media(max-width:980px){
  .mobile-panel{
    z-index:10000;
    isolation:isolate;
    background:linear-gradient(180deg,#fbf8f2 0%,#f6efe6 100%);
    backdrop-filter:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
  }
  .mobile-panel-inner{gap:14px;}
  .mobile-menu-brand{padding-bottom:6px;}
  .mobile-panel nav{gap:13px;padding-bottom:22px;}
  .mobile-menu-group-title{padding:11px 2px 6px;font-size:10.5px;letter-spacing:.16em;}
  .mobile-panel nav a:not(.mobile-book){padding:11px 2px;font-size:12.5px;letter-spacing:.07em;}
  .mobile-panel nav .mobile-book{
    width:100%;
    min-height:72px;
    margin-top:4px;
    padding:18px 22px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:linear-gradient(180deg,#2b251f,#201b17);
    color:#fff;
    font-family:var(--sans);
    font-size:11px;
    line-height:1.15;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
    text-align:center;
    box-shadow:0 18px 46px rgba(41,34,28,.18);
  }
}
@media(max-width:760px){
  .service-signal-panel{padding:24px 20px;border-radius:28px;}
  .service-signal-panel .grid-head{gap:16px;margin-bottom:20px;}
  .service-signal-panel .big-title{font-size:clamp(36px,10vw,48px);line-height:1;}
  .service-signal-panel .lead{font-size:14.5px;line-height:1.55;}
  .signal-grid{gap:11px;}
  .signal-grid .signal-card{padding:20px 18px;border-radius:24px;background:rgba(255,255,255,.36);box-shadow:0 12px 34px rgba(41,34,28,.04);}
  .signal-grid .signal-kicker{font-size:10px;letter-spacing:.16em;margin-bottom:14px;}
  .signal-grid .signal-card h2{font-size:clamp(25px,7vw,31px);line-height:1.03;margin-bottom:10px;letter-spacing:-.035em;font-weight:600;}
  .signal-grid .signal-card p{font-size:14.2px;line-height:1.52;margin:0;}
  .choice-matrix{gap:11px;}
  .choice-matrix .choice-card{padding:20px 18px;border-radius:24px;}
  .choice-matrix .choice-card span{margin-bottom:12px;font-size:9.5px;letter-spacing:.12em;}
  .choice-matrix .choice-card h3{font-size:clamp(25px,7vw,31px);line-height:1.03;margin-bottom:9px;font-weight:600;}
  .choice-matrix .choice-card p{font-size:14.2px;line-height:1.52;}
}
@media(max-width:430px){
  .mobile-panel{padding-top:calc(12px + env(safe-area-inset-top));padding-bottom:calc(26px + env(safe-area-inset-bottom));}
  .mobile-panel-inner{width:min(100% - 28px,620px);gap:12px;}
  .mobile-close{width:42px;height:42px;font-size:24px;}
  .mobile-menu-brand img{width:46px;}
  .mobile-menu-brand span{font-size:17px;letter-spacing:.15em;}
  .mobile-menu-brand em{font-size:10px;letter-spacing:.13em;}
  .mobile-panel nav{gap:11px;}
  .mobile-menu-group-title{padding:10px 2px 5px;}
  .mobile-panel nav a:not(.mobile-book){padding:10px 2px;font-size:12px;letter-spacing:.065em;}
  .mobile-panel nav a:not(.mobile-book)::after{font-size:18px;}
  .mobile-panel nav .mobile-book{min-height:64px;padding:16px 18px;font-size:10.5px;letter-spacing:.14em;}
  .service-signal-panel{padding:22px 18px;border-radius:26px;}
  .service-signal-panel .grid-head{margin-bottom:18px;}
  .signal-grid{gap:10px;}
  .signal-grid .signal-card{padding:18px 17px;border-radius:22px;}
  .signal-grid .signal-kicker{margin-bottom:12px;}
  .signal-grid .signal-card h2{font-size:clamp(24px,6.8vw,29px);margin-bottom:8px;}
  .signal-grid .signal-card p{font-size:13.8px;line-height:1.48;}
  .choice-matrix .choice-card{padding:18px 17px;border-radius:22px;}
  .choice-matrix .choice-card h3{font-size:clamp(24px,6.8vw,29px);}
  .choice-matrix .choice-card p{font-size:13.8px;line-height:1.48;}
}

@media(max-width:980px){
  html{scroll-padding-top:112px;}
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom));}
  .topbar{z-index:210;}
  .brand-logo-img,.topbar .brand-logo-img{width:min(182px,calc(100vw - 142px));max-height:50px;}
  .section,.route-hero,.home-path-preview,.home-service-preview,.guides-route-hero,.guides-index-section,.guides-notes-section{scroll-margin-top:116px;}
  .home-path-lite{padding-block:38px 34px;}
  .home-path-lite .grid-head{margin-bottom:16px;}
  .home-path-lite .big-title{font-size:clamp(38px,10.6vw,50px);line-height:.98;}
  .home-path-lite .route-map-grid,.route-map-compact{gap:9px;}
  .home-path-lite .route-map-card,.route-map-compact .route-map-card{min-height:74px;padding:12px 13px;border-radius:21px;}
  .home-path-lite .route-map-card span,.route-map-compact .route-map-card span{font-size:9.5px;letter-spacing:.15em;}
  .home-path-lite .route-map-card strong,.route-map-compact .route-map-card strong{font-size:20px;}
  .home-booking-line{padding:15px 16px;border-radius:20px;}
  .home-service-preview{padding-top:62px;}
  .home-service-preview .grid-head{margin-bottom:20px;}
  .home-service-preview .big-title{font-size:clamp(38px,10.6vw,51px);line-height:.98;max-width:9.6em;}
  .home-service-preview .lead{font-size:14.6px;line-height:1.55;}
  .guides-notes-section{padding-top:42px;}
  .guides-notes-section .panel{padding:22px 18px;border-radius:26px;}
  .guides-notes-section .grid-head{gap:16px;margin-bottom:20px;}
  .guides-notes-section .big-title{font-size:clamp(36px,10.2vw,48px);line-height:1;}
  .guides-notes-section .lead{font-size:14.5px;line-height:1.54;}
  .guides-notes-section .note-grid{gap:11px;}
  .guides-notes-section .note-grid article{padding:20px 18px;border-radius:24px;}
  .guides-notes-section .note-kicker{font-size:9.5px;letter-spacing:.13em;padding:6px 9px;margin-bottom:13px;}
  .guides-notes-section .note-grid h3{font-size:clamp(24px,7.1vw,31px);line-height:1.03;margin-bottom:10px;}
  .guides-notes-section .note-grid p{font-size:14px;line-height:1.52;}
  .guides-notes-section .note-subtitle{font-size:14.6px;line-height:1.48;margin-bottom:12px;}
}
@media(max-width:430px){
  html{scroll-padding-top:104px;}
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom));}
  .brand-logo-img,.topbar .brand-logo-img{width:min(170px,calc(100vw - 126px));}
  .nav{height:74px;}
  .section,.route-hero,.home-path-preview,.home-service-preview,.guides-route-hero,.guides-index-section,.guides-notes-section{scroll-margin-top:108px;}
  .home-path-lite{padding-block:36px 32px;}
  .home-path-lite .big-title{font-size:clamp(36px,10.2vw,47px);}
  .home-path-lite .route-map-card,.route-map-compact .route-map-card{min-height:70px;padding:11px 12px;border-radius:20px;}
  .home-path-lite .route-map-card strong,.route-map-compact .route-map-card strong{font-size:19px;}
  .home-service-preview .big-title{font-size:clamp(36px,10.1vw,48px);}
  .home-service-preview .lead{font-size:14.2px;line-height:1.52;}
  .guides-notes-section .panel{padding:20px 16px;border-radius:24px;}
  .guides-notes-section .note-grid article{padding:18px 16px;border-radius:22px;}
  .guides-notes-section .note-grid h3{font-size:clamp(23px,6.7vw,29px);}
  .guides-notes-section .note-grid p{font-size:13.6px;line-height:1.48;}
}

@media(max-width:980px){
  body{padding-bottom:calc(34px + env(safe-area-inset-bottom));}
}
@media(max-width:430px){
  body{padding-bottom:calc(32px + env(safe-area-inset-bottom));}
}

.mobile-header-book{display:none;}
@media(max-width:980px){
  body{padding-bottom:0;}
  .nav{gap:10px;}
  .brand{min-width:0;flex:1 1 auto;}
  .topbar .brand-logo-img{width:min(198px,calc(100vw - 178px));}
  .lang{display:none;}
  .mobile-header-book{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:42px;padding:0 18px;border-radius:999px;background:linear-gradient(180deg,#2b251f,#1f1a16);color:#fff;border:1px solid rgba(41,34,28,.24);box-shadow:0 12px 30px rgba(35,28,22,.12),inset 0 1px 0 rgba(255,255,255,.12);font-family:var(--sans);font-size:10.5px;line-height:1;letter-spacing:.17em;text-transform:uppercase;font-weight:800;}
  .mobile-header-book:hover{transform:translateY(-1px);box-shadow:0 14px 32px rgba(35,28,22,.14),inset 0 1px 0 rgba(255,255,255,.14);}
  .mobile-menu{margin-left:0;min-height:42px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;}
  .mobile-menu-language{border-top:1px solid var(--line);}
  .mobile-menu-language .mobile-lang-link{font-weight:700;}
}
@media(max-width:620px){
  .topbar .brand-logo-img{width:min(184px,calc(100vw - 172px));}
  .mobile-header-book{min-height:40px;padding:0 15px;font-size:10px;letter-spacing:.16em;}
  .mobile-menu{min-height:40px;padding-inline:13px;}
}
@media(max-width:380px){
  .topbar .brand-logo-img{width:min(166px,calc(100vw - 164px));}
  .mobile-header-book{padding:0 13px;font-size:9.8px;letter-spacing:.145em;}
  .mobile-menu{padding-inline:12px;}
}


@media(max-width:980px){
  .nav{gap:8px;}
  .brand{flex:1 1 auto;min-width:0;}
  .lang{display:inline-flex;align-items:center;justify-content:center;order:1;flex:0 0 auto;min-height:42px;padding:0 12px;margin-left:0;border-radius:999px;background:rgba(255,255,255,.56);border:1px solid var(--line);font-family:var(--sans);font-size:10.5px;line-height:1;letter-spacing:.04em;font-weight:700;white-space:nowrap;}
  .mobile-header-book{order:2;padding:0 15px;min-height:42px;font-size:10.2px;letter-spacing:.15em;}
  .mobile-menu{order:3;min-height:42px;padding:0 13px;}
  .topbar .brand-logo-img{width:min(164px,calc(100vw - 214px));max-height:46px;}
  .visit-photo .image-label-arrival{top:auto;bottom:16px;left:16px;}
}
@media(max-width:430px){
  .topbar .brand-logo-img{width:min(148px,calc(100vw - 198px));max-height:44px;}
  .lang{min-height:40px;padding:0 10px;font-size:9.8px;letter-spacing:.03em;}
  .mobile-header-book{min-height:40px;padding:0 14px;font-size:9.8px;letter-spacing:.14em;}
  .mobile-menu{min-height:40px;padding:0 12px;font-size:11px;}
  .visit-photo .image-label-arrival{bottom:14px;left:14px;padding:8px 12px;font-size:10px;}
}
@media(max-width:380px){
  .nav{gap:6px;}
  .topbar .brand-logo-img{width:min(132px,calc(100vw - 188px));max-height:40px;}
  .lang{padding:0 8px;font-size:9.2px;}
  .mobile-header-book{padding:0 12px;font-size:9.2px;}
  .mobile-menu{padding:0 10px;font-size:10.5px;}
}
@media(max-width:360px){
  .topbar .brand-logo-img{width:min(120px,calc(100vw - 184px));max-height:38px;}
}

@media(max-width:980px){
  .nav{gap:10px;}
  .brand{min-width:0;flex:1 1 auto;}
  .topbar .brand-logo-img{width:min(198px,calc(100vw - 178px));max-height:48px;}
  .lang{display:none;}
  .mobile-header-book{order:1;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:42px;padding:0 18px;border-radius:999px;background:linear-gradient(180deg,#2b251f,#1f1a16);color:#fff;border:1px solid rgba(41,34,28,.24);box-shadow:0 12px 30px rgba(35,28,22,.12),inset 0 1px 0 rgba(255,255,255,.12);font-family:var(--sans);font-size:10.5px;line-height:1;letter-spacing:.17em;text-transform:uppercase;font-weight:800;}
  .mobile-menu{order:2;min-height:42px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;}
  .mobile-menu-language,.mobile-menu-language .mobile-lang-link{display:none;}
  .mobile-menu-language-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.50);box-shadow:0 12px 32px rgba(41,34,28,.045);}
  .mobile-menu-language-top span{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:800;}
  .mobile-menu-language-top a{font-family:var(--sans);font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--deep);}
  .mobile-menu-language-top a::after{content:'';}
}
@media(max-width:620px){
  .topbar .brand-logo-img{width:min(184px,calc(100vw - 142px));max-height:46px;}
  .mobile-header-book{min-height:40px;padding:0 16px;font-size:10px;letter-spacing:.16em;}
  .mobile-menu{min-height:40px;padding-inline:13px;}
}
@media(max-width:380px){
  .topbar .brand-logo-img{width:min(168px,calc(100vw - 132px));max-height:42px;}
  .mobile-header-book{padding:0 13px;font-size:9.8px;letter-spacing:.145em;}
  .mobile-menu{padding-inline:12px;}
}

@media(max-width:980px){
  .topbar .brand-logo-img{width:min(202px,calc(100vw - 178px));max-height:48px;}
  .mobile-menu-language-top{margin-top:-2px;margin-bottom:2px;}
  .image-label{max-width:calc(100% - 32px);white-space:normal;line-height:1.1;}
}
@media(max-width:620px){
  .topbar .brand-logo-img{width:min(188px,calc(100vw - 142px));max-height:46px;}
  .hero-card .image-label,
  .hero-card-clean .image-label,
  .portrait .image-label,
  .work-card .image-label,
  .visit-photo .image-label{padding:8px 12px;font-size:9.8px;letter-spacing:.135em;}
  .visit-photo .image-label-arrival{top:auto;bottom:14px;left:14px;}
}
@media(max-width:380px){
  .topbar .brand-logo-img{width:min(172px,calc(100vw - 132px));max-height:42px;}
  .mobile-header-book{padding:0 12px;}
  .mobile-menu{padding-inline:11px;}
  .visit-photo .image-label-arrival{bottom:12px;left:12px;}
}

@media(max-width:620px){
  body:not([data-page="home"]) main > section:first-of-type{
    padding-top:clamp(54px,13vw,86px);
  }
  body:not([data-page="home"]) .page-hero,
  body:not([data-page="home"]) .section-hero,
  body:not([data-page="home"]) .article-hero{
    padding-top:clamp(54px,13vw,86px);
  }
}
@media(max-width:430px){
  body:not([data-page="home"]) main > section:first-of-type{
    padding-top:clamp(44px,11vw,72px);
  }
  body:not([data-page="home"]) .page-hero,
  body:not([data-page="home"]) .section-hero,
  body:not([data-page="home"]) .article-hero{
    padding-top:clamp(44px,11vw,72px);
  }
}

@media(min-width:981px){
  .navlinks{
    gap:18px;
  }
  .navlinks .nav-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 20px;
    margin-left:2px;
    border-radius:999px;
    border:1px solid rgba(41,34,28,.22);
    background:linear-gradient(180deg,#2b251f,#1f1a16);
    color:#fff;
    box-shadow:0 12px 30px rgba(35,28,22,.10),inset 0 1px 0 rgba(255,255,255,.12);
    font-size:10.8px;
    line-height:1;
    font-weight:800;
    letter-spacing:.17em;
    text-transform:uppercase;
    white-space:nowrap;
  }
  .navlinks .nav-cta::after{
    display:none;
  }
  .navlinks .nav-cta:hover{
    color:#fff;
    transform:translateY(-1px);
    box-shadow:0 14px 32px rgba(35,28,22,.14),inset 0 1px 0 rgba(255,255,255,.14);
  }
}
@media(min-width:981px) and (max-width:1160px){
  .nav{
    gap:14px;
  }
  .brand-logo-img{
    width:clamp(196px,17vw,248px);
  }
  .navlinks{
    gap:14px;
    font-size:12.5px;
  }
  .navlinks .nav-cta{
    min-height:40px;
    padding:0 16px;
    font-size:10.4px;
    letter-spacing:.155em;
  }
  .lang{
    padding:10px 13px;
  }
}

.desktop-header-book{
  display:none;
}
@media(min-width:981px){
  .topbar{
    background:rgba(248,244,238,.90);
    border-bottom:1px solid rgba(42,36,30,.085);
  }
  .nav{
    height:90px;
    gap:18px;
  }
  .topbar .brand-logo-img{
    width:clamp(210px,17vw,282px);
  }
  .navlinks{
    margin-left:auto;
    gap:20px;
    font-size:12.6px;
    line-height:1;
    letter-spacing:.018em;
    color:rgba(41,34,28,.58);
  }
  .navlinks > a,
  .navlinks > a:visited,
  .nav-more summary{
    color:rgba(41,34,28,.58);
    font-weight:500;
    text-decoration:none;
  }
  .navlinks > a:not([aria-current="page"]):visited{
    color:rgba(41,34,28,.58);
  }
  .navlinks > a:hover,
  .navlinks > a[aria-current="page"],
  .navlinks > a[aria-current="page"]:visited,
  .nav-more[open] summary,
  .nav-more summary:hover{
    color:#211c18;
  }
  .navlinks > a[aria-current="page"]::after{
    left:0;
    right:0;
    bottom:-2px;
    height:1px;
    background:linear-gradient(90deg,rgba(41,34,28,.65),rgba(41,34,28,.18));
    opacity:1;
  }
  .nav-more summary{
    letter-spacing:.018em;
  }
  .nav-more summary::after{
    opacity:.42;
    margin-left:9px;
  }
  .nav-more-menu{
    border-color:rgba(42,36,30,.12);
    background:rgba(255,250,243,.97);
    box-shadow:0 28px 80px rgba(41,34,28,.13);
  }
  .nav-more-menu a,
  .nav-more-menu a:visited{
    color:rgba(41,34,28,.72);
  }
  .nav-more-menu a:hover,
  .nav-more-menu a[aria-current="page"]{
    color:#211c18;
    background:rgba(232,222,211,.50);
  }
  .desktop-header-book{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:43px;
    padding:0 22px;
    margin-left:2px;
    border-radius:999px;
    border:1px solid rgba(41,34,28,.24);
    background:linear-gradient(180deg,#2b251f,#1f1a16);
    color:#fff;
    box-shadow:0 14px 34px rgba(35,28,22,.12),inset 0 1px 0 rgba(255,255,255,.13);
    font-family:var(--sans);
    font-size:10.8px;
    line-height:1;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
    white-space:nowrap;
    text-decoration:none;
    transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
  }
  .desktop-header-book:visited{
    color:#fff;
  }
  .desktop-header-book:hover{
    color:#fff;
    transform:translateY(-1px);
    box-shadow:0 16px 38px rgba(35,28,22,.16),inset 0 1px 0 rgba(255,255,255,.15);
  }
  .topbar .lang{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:43px;
    padding:0 17px;
    margin-left:0;
    border-color:rgba(42,36,30,.12);
    background:rgba(255,255,255,.36);
    color:rgba(41,34,28,.68);
    font-size:12.2px;
    letter-spacing:.012em;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.48);
  }
  .topbar .lang:visited{
    color:rgba(41,34,28,.68);
  }
  .topbar .lang:hover{
    color:#211c18;
    background:rgba(255,255,255,.54);
  }
  .navlinks .nav-cta{
    display:none;
  }
}
@media(min-width:981px) and (max-width:1180px){
  .nav{
    gap:13px;
  }
  .topbar .brand-logo-img{
    width:clamp(190px,16vw,238px);
  }
  .navlinks{
    gap:13px;
    font-size:11.7px;
    letter-spacing:.01em;
  }
  .desktop-header-book{
    min-height:40px;
    padding:0 16px;
    font-size:10.2px;
    letter-spacing:.16em;
  }
  .topbar .lang{
    min-height:40px;
    padding:0 13px;
    font-size:11.8px;
  }
}
@media(min-width:981px) and (max-width:1060px){
  .topbar .brand-logo-img{
    width:188px;
  }
  .navlinks{
    gap:10px;
    font-size:11.2px;
  }
  .desktop-header-book{
    padding:0 14px;
  }
  .topbar .lang{
    padding:0 12px;
  }
}
@media(max-width:980px){
  .desktop-header-book{
    display:none;
  }
}

@media(min-width:981px){
  .topbar .navlinks > a[href],
  .topbar .navlinks > a[href]:visited,
  .topbar .navlinks > a[href*="/bridal/"],
  .topbar .navlinks > a[href*="/bridal/"]:visited{
    color:rgba(41,34,28,.58);
    font-weight:500;
    text-decoration:none;
  }
  .topbar .navlinks > a[href]:hover,
  .topbar .navlinks > a[href][aria-current="page"],
  .topbar .navlinks > a[href][aria-current="page"]:visited{
    color:#211c18;
  }
  .topbar .navlinks > a[href*="/bridal/"]:not([aria-current="page"])::after{
    content:none;
    display:none;
  }
}

@media(min-width:981px){
  .footer-dark{
    padding-top:78px;
    padding-bottom:88px;
  }
  .footer-dark-brand{
    margin-bottom:26px;
  }
  .footer-dark-rule{
    margin:24px auto 30px;
  }
  .footer-dark-details{
    padding-top:22px;
    padding-bottom:22px;
  }
  .footer-dark-nav{
    margin-top:38px;
    margin-bottom:24px;
  }
  .footer-dark-links{
    margin-top:28px;
  }
  .footer-action-link{
    min-height:108px;
  }
  .footer-action-link.footer-action-primary{
    min-height:122px;
    margin-top:-6px;
  }
  .footer-action-link.footer-action-visual{
    min-height:112px;
  }
}
@media(max-width:980px){
  .footer-dark{
    margin-top:44px;
    padding-top:56px;
    padding-bottom:calc(78px + env(safe-area-inset-bottom));
  }
  .footer-dark-brand{
    margin-bottom:22px;
  }
  .footer-dark-monogram{
    width:72px;
  }
  .footer-dark-tagline{
    font-size:21px;
    line-height:1.06;
    max-width:300px;
  }
  .footer-dark-rule{
    margin:18px auto 22px;
    max-width:280px;
  }
  .footer-dark-details>div{
    padding:14px 12px;
  }
  .footer-dark-nav{
    margin-top:26px;
    margin-bottom:18px;
  }
  .footer-dark-links{
    margin-top:20px;
    gap:10px;
  }
  .footer-action-link.footer-action-primary{
    min-height:86px;
  }
  .footer-action-link.footer-action-visual{
    min-height:84px;
  }
  .footer-action-link.footer-action-utility{
    min-height:88px;
  }
}
@media(max-width:380px){
  .footer-dark{
    padding-top:50px;
    padding-bottom:calc(74px + env(safe-area-inset-bottom));
  }
  .footer-dark-details>div{
    padding:13px 10px;
  }
  .footer-dark-links{
    gap:9px;
  }
}


/* V2.8.35 - hero image label alignment polish */
.hero-card-clean .image-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  top:22px;
  left:22px;
  min-height:34px;
  padding:8px 16px;
  line-height:1;
  white-space:nowrap;
  max-width:calc(100% - 56px);
}
@media(max-width:980px){
  .hero-card-clean .image-label{top:20px;left:20px;max-width:calc(100% - 52px);}
}
@media(max-width:620px){
  .hero-card-clean .image-label{top:18px;left:18px;padding:8px 14px;min-height:32px;font-size:9.6px;letter-spacing:.13em;max-width:calc(100% - 48px);}
}
@media(max-width:380px){
  .hero-card-clean .image-label{top:16px;left:16px;max-width:calc(100% - 44px);}
}


/* V2.8.41 - Reviews page rhythm polish */
body[data-page="reviews"] .route-hero{padding-bottom:30px;}
body[data-page="reviews"] .route-hero + .section-tight{padding-top:24px;padding-bottom:62px;}
body[data-page="reviews"] .route-hero + .section-tight .proof-strip{margin-top:0;}
body[data-page="reviews"] .google-verify-panel{margin-top:0;}
@media(min-width:981px){
  body[data-page="reviews"] .route-hero{padding-top:104px;padding-bottom:24px;}
  body[data-page="reviews"] .route-hero .lead{max-width:860px;}
  body[data-page="reviews"] .route-hero + .section-tight{padding-top:18px;padding-bottom:58px;}
  body[data-page="reviews"] .route-hero + .section-tight + .section-tight{padding-top:56px;}
}
@media(max-width:980px){
  body[data-page="reviews"] .route-hero{padding-bottom:28px;}
  body[data-page="reviews"] .route-hero + .section-tight{padding-top:26px;padding-bottom:50px;}
}
@media(max-width:620px){
  body[data-page="reviews"] .route-hero{padding-top:76px;padding-bottom:22px;}
  body[data-page="reviews"] .route-hero + .section-tight{padding-top:18px;padding-bottom:42px;}
  body[data-page="reviews"] .proof-strip strong{font-size:38px;}
}

body[data-page="atelier"] .route-hero{padding-bottom:42px}
body[data-page="atelier"] .route-hero + .section{padding-top:76px}
body[data-page="atelier"] .route-hero .lead{max-width:800px}

body[data-page="private-nail-atelier-valby"] .section:first-of-type{padding-top:76px;padding-bottom:88px}
body[data-page="private-nail-atelier-valby"] .article-guide{max-width:880px}
body[data-page="private-nail-atelier-valby"] .article-guide h1{margin:8px 0 18px;max-width:860px}
body[data-page="private-nail-atelier-valby"] .article-guide .article-intro{margin:0 0 22px;max-width:780px;font-size:18px;line-height:1.68}
body[data-page="private-nail-atelier-valby"] .article-guide > h2{margin:36px 0 10px}
body[data-page="private-nail-atelier-valby"] .article-guide .article-intro + h2{margin-top:24px}
body[data-page="private-nail-atelier-valby"] .article-guide > p:not(.article-intro){margin-top:0;margin-bottom:0}
body[data-page="private-nail-atelier-valby"] .article-guide > .article-cta{margin-top:46px}

@media(min-width:1101px){
  .bridal-hero .bridal-grid{grid-template-columns:minmax(0,.95fr) minmax(420px,.9fr);gap:42px}
  .bridal-hero .bridal-image-grid{max-width:720px;justify-self:end}
  .bridal-hero .route-title{max-width:780px}
  .bridal-note{max-width:720px}
}

@media(max-width:620px){
  body[data-page="private-nail-atelier-valby"] .section:first-of-type{padding-top:48px;padding-bottom:64px}
  body[data-page="private-nail-atelier-valby"] .article-guide h1{margin-bottom:16px}
  body[data-page="private-nail-atelier-valby"] .article-guide .article-intro{font-size:16px;line-height:1.62;margin-bottom:18px}
  body[data-page="private-nail-atelier-valby"] .article-guide > h2{margin-top:28px}
  body[data-page="atelier"] .route-hero + .section{padding-top:58px}
}


/* V2.8.43 - Founder note containment polish */
.founder-note-section{padding-block:92px;}
.founder-note-section .split.reverse{max-width:1080px;grid-template-columns:minmax(360px,.82fr) minmax(360px,.92fr);gap:56px;align-items:center;}
.founder-note-section .portrait{width:min(100%,500px);justify-self:start;border-radius:38px;}
.founder-note-section .portrait img{height:540px;object-position:center center;}
.founder-note-section .split.reverse>div:not(.portrait){max-width:630px;align-self:center;}
.founder-note-section .big-title{max-width:620px;}
.founder-note-section .lead{max-width:630px;line-height:1.66;}
.home-founder-note.founder-note-section{padding-block:88px 96px;}
@media(min-width:1280px){
  .founder-note-section .split.reverse{max-width:1040px;}
}
@media(max-width:980px){
  .founder-note-section{padding-block:72px;}
  .founder-note-section .split.reverse{max-width:720px;gap:34px;}
  .founder-note-section .portrait{width:100%;justify-self:center;}
  .founder-note-section .portrait img{height:auto;aspect-ratio:4/5;object-fit:cover;}
  .founder-note-section .lead{line-height:1.6;}
}
@media(max-width:620px){
  .founder-note-section{padding-block:58px;}
  .home-founder-note.founder-note-section{padding-block:58px 66px;}
  .founder-note-section .split.reverse{gap:26px;}
  .founder-note-section .portrait{border-radius:32px;}
  .founder-note-section .image-label{font-size:9.6px;letter-spacing:.13em;}
}


/* V2.8.50 - Android mobile viewport containment fix */
@media(max-width:980px){
  html,body{width:100%;max-width:100%;overflow-x:hidden;}
  body{min-width:100vw;position:relative;}
  .topbar,main,.footer,.footer-dark{width:100%;max-width:100vw;overflow-x:hidden;}
  section,.section,.section-tight,.hero,.route-hero{max-width:100vw;overflow-x:clip;}
  .shell{width:calc(100vw - 30px);max-width:760px;margin-left:auto;margin-right:auto;}
  .nav{width:calc(100vw - 30px);max-width:760px;margin-left:auto;margin-right:auto;}
  .grid-head,.hero-grid,.split,.split.reverse,.visit-grid,.review-hero-grid,.review-intro,.bridal-grid{min-width:0;}
  .service-card,.panel,.review,.guide-card,.work-card,.hero-card,.portrait,.visit-photo{min-width:0;}
}
@media(max-width:620px){
  .shell,.nav{width:calc(100vw - 24px);}
}


/* V2.8.50 - Mobile founder note visibility fix */
@media(max-width:980px){
  .founder-note-section .split.reverse{
    grid-template-columns:1fr !important;
    max-width:720px;
  }
  .founder-note-section .split.reverse>figure.portrait,
  .founder-note-section .split.reverse>div{
    grid-column:1 / -1;
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .founder-note-section .split.reverse>div:not(.portrait){
    justify-self:stretch;
    align-self:start;
    max-width:100%;
  }
}
@media(max-width:620px){
  .founder-note-section .split.reverse{gap:22px;}
  .founder-note-section{padding-block:52px;}
  .home-founder-note.founder-note-section{padding-block:52px 58px;}
  .founder-note-section .portrait img{aspect-ratio:4/5;}
  .founder-note-section .big-title{font-size:clamp(34px,11vw,50px);}
  .founder-note-section .lead{font-size:15.5px;line-height:1.58;}
}


/* V2.8.50 - Bridal hero containment fix */
body[data-page="bridal"] .bridal-hero,
body[data-page="bridal"] .bridal-hero .shell,
body[data-page="bridal"] .bridal-hero .bridal-grid,
body[data-page="bridal"] .bridal-image-grid,
body[data-page="bridal"] .bridal-image-grid figure{
  max-width:100%;
  min-width:0;
  overflow-x:clip;
}
body[data-page="bridal"] .bridal-hero .route-title,
body[data-page="bridal"] .bridal-hero .lead,
body[data-page="bridal"] .bridal-note{
  max-width:100%;
  min-width:0;
  overflow-wrap:break-word;
}
@media(min-width:1101px){
  body[data-page="bridal"] .bridal-hero .shell.bridal-grid{
    width:min(1088px,calc(100vw - 72px));
    grid-template-columns:minmax(0,.9fr) minmax(0,.78fr);
    gap:38px;
    margin-left:auto;
    margin-right:auto;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid{
    width:min(100%,620px);
    max-width:620px;
    justify-self:end;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid img{
    height:320px;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid figure:first-child img{
    height:656px;
  }
  body[data-page="bridal"] .bridal-hero .route-title{
    font-size:clamp(52px,5.5vw,82px);
    max-width:720px;
  }
  body[data-page="bridal"] .bridal-note{
    max-width:680px;
  }
}
@media(max-width:1100px){
  body[data-page="bridal"] .bridal-hero .shell.bridal-grid{
    width:calc(100vw - 36px);
    grid-template-columns:1fr !important;
    gap:30px;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid{
    width:100%;
    max-width:720px;
    justify-self:stretch;
  }
}
@media(max-width:620px){
  body[data-page="bridal"] .bridal-hero .shell.bridal-grid{
    width:calc(100vw - 24px);
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid img,
  body[data-page="bridal"] .bridal-hero .bridal-image-grid figure:first-child img{
    height:clamp(286px,78vw,360px);
  }
}


/* V2.8.52 - Bridal hero main image crop polish */
@media(min-width:1101px){
  body[data-page="bridal"] .bridal-hero .shell.bridal-grid{
    width:min(1160px,calc(100vw - 72px));
    grid-template-columns:minmax(0,.86fr) minmax(0,.94fr);
    gap:34px;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid{
    width:min(100%,700px);
    max-width:700px;
    grid-template-columns:minmax(0,1.34fr) minmax(0,.86fr);
    gap:16px;
    justify-self:end;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid img{
    height:270px;
    object-position:center center;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid figure:first-child{
    grid-row:span 2;
    grid-column:auto;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid figure:first-child img{
    height:556px;
    object-position:center center;
  }
}

/* V2.8.52 - Bridal main image natural ratio polish */
@media(min-width:1101px){
  body[data-page="bridal"] .bridal-hero .bridal-image-grid{
    width:min(100%,740px);
    max-width:740px;
    grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
    gap:16px;
    align-items:start;
    justify-self:end;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid img{
    height:276px;
    object-fit:cover;
    object-position:center center;
  }
  body[data-page="bridal"] .bridal-hero .bridal-image-grid figure:first-child img{
    height:auto !important;
    width:100%;
    aspect-ratio:auto;
    object-fit:contain !important;
    object-position:center center;
    background:var(--taupe-soft);
  }
}


/* V2.8.56 - MobilePay payment wording sync */
.mobile-panel[hidden]{display:none!important;}
@media(max-width:980px){
  body.menu-open{
    overflow:hidden!important;
    touch-action:none;
  }
  body.menu-open .topbar{
    z-index:1000;
  }
  .mobile-panel{
    position:fixed!important;
    inset:0!important;
    left:0!important;
    right:0!important;
    top:0!important;
    bottom:0!important;
    width:100vw!important;
    max-width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    z-index:20000!important;
    display:block;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    background:linear-gradient(180deg,#fffaf3 0%,#f8f4ee 58%,#f1e8dd 100%)!important;
    backdrop-filter:none!important;
    padding:calc(env(safe-area-inset-top,0px) + 16px) 0 calc(env(safe-area-inset-bottom,0px) + 34px)!important;
    box-shadow:none!important;
  }
  .mobile-panel.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
  .mobile-panel-inner{
    width:min(100% - 28px,620px)!important;
    min-height:auto!important;
    margin-inline:auto!important;
    display:grid!important;
    align-content:start!important;
    gap:16px!important;
  }
  .mobile-close{
    position:sticky;
    top:calc(env(safe-area-inset-top,0px) + 12px);
    justify-self:end;
    z-index:2;
    width:52px!important;
    height:52px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:rgba(255,250,243,.96)!important;
    box-shadow:0 14px 34px rgba(41,34,28,.10);
  }
  .mobile-menu-brand,
  .mobile-menu-language-top,
  .mobile-panel nav{
    visibility:visible!important;
    opacity:1!important;
  }
  .mobile-menu-brand{
    margin-top:-4px;
    padding:0 0 12px;
  }
  .mobile-menu-language-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    border:1px solid var(--line);
    border-radius:999px;
    padding:11px 14px;
    background:rgba(255,255,255,.48);
  }
  .mobile-menu-language-top span{
    font-size:11px;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--muted);
    font-weight:800;
  }
  .mobile-lang-link{
    font-size:12px;
    letter-spacing:.10em;
    text-transform:uppercase;
    font-weight:800;
    color:var(--deep);
  }
}
@media(max-width:620px){
  .mobile-panel-inner{width:calc(100vw - 24px)!important;}
  .mobile-panel nav a:not(.mobile-book){font-size:13px!important;padding:13px 2px!important;}
  .mobile-book{min-height:54px;}
}


/* V2.8.56 - International benchmark mobile conversion polish
   Scope: service-menu scanability, mobile CTA rhythm and tap-state polish only. */
.btn,
.nav-cta,
.desktop-header-book,
.mobile-header-book,
.mobile-menu,
.mobile-close,
.mobile-book,
.footer-action-link{
  touch-action:manipulation;
}
.btn:focus-visible,
.nav-cta:focus-visible,
.desktop-header-book:focus-visible,
.mobile-header-book:focus-visible,
.mobile-menu:focus-visible,
.mobile-close:focus-visible,
.mobile-book:focus-visible,
.footer-action-link:focus-visible{
  outline:2px solid rgba(41,34,28,.72);
  outline-offset:4px;
}
@media(max-width:980px){
  body[data-page="services"] .route-hero{
    padding-top:58px;
    padding-bottom:36px;
  }
  body[data-page="services"] .section{
    padding-block:56px;
  }
  body[data-page="services"] .section-tight{
    padding-block:48px;
  }
  body[data-page="services"] .service-group{
    margin-top:38px;
  }
  body[data-page="services"] .category-title{
    font-size:clamp(31px,8.8vw,42px);
    line-height:1;
    margin-bottom:16px;
  }
  body[data-page="services"] .service-grid{
    gap:12px;
  }
  body[data-page="services"] .service-card{
    padding:22px 20px;
    border-radius:24px;
    background:linear-gradient(180deg,rgba(255,255,255,.50),rgba(255,250,243,.36));
  }
  body[data-page="services"] .service-meta{
    gap:6px;
    margin-bottom:13px;
  }
  body[data-page="services"] .pill{
    font-size:9px;
    letter-spacing:.105em;
    padding:6px 8px;
  }
  body[data-page="services"] .service-card h3{
    font-size:clamp(24px,7.1vw,31px);
    line-height:1.02;
    margin-bottom:9px;
  }
  body[data-page="services"] .service-card p{
    font-size:14.7px;
    line-height:1.54;
    margin:0;
  }
  body[data-page="services"] .best{
    margin-top:14px;
    padding:14px 15px;
    border:1px solid rgba(42,36,30,.085);
    border-radius:16px;
    background:rgba(255,255,255,.28);
    font-size:13.4px;
    line-height:1.48;
  }
  body[data-page="services"] .choice-matrix,
  body[data-page="services"] .signal-grid{
    gap:10px;
  }
  body[data-page="services"] .choice-card,
  body[data-page="services"] .signal-card{
    padding:20px 18px;
    border-radius:24px;
  }
  body[data-page="services"] .final-booking .button-row .btn,
  body[data-page="services"] #bridal-booking-guide .button-row .btn{
    min-height:52px;
  }
}
@media(max-width:620px){
  body[data-page="services"] .route-hero{
    padding-top:36px;
    padding-bottom:26px;
  }
  body[data-page="services"] .route-title{
    font-size:clamp(40px,12.4vw,56px);
    margin-bottom:13px;
  }
  body[data-page="services"] .lead{
    font-size:14.8px;
    line-height:1.53;
  }
  body[data-page="services"] .section{
    padding-block:48px;
  }
  body[data-page="services"] .section-tight{
    padding-block:42px;
  }
  body[data-page="services"] .service-group{
    margin-top:31px;
  }
  body[data-page="services"] .service-grid{
    gap:10px;
  }
  body[data-page="services"] .service-card{
    padding:19px 17px;
    border-radius:22px;
  }
  body[data-page="services"] .service-card h3{
    font-size:clamp(23px,6.8vw,28px);
    margin-bottom:8px;
  }
  body[data-page="services"] .service-card p{
    font-size:14.25px;
    line-height:1.48;
  }
  body[data-page="services"] .best{
    padding:12px 13px;
    font-size:13.1px;
    line-height:1.43;
  }
  body[data-page="services"] .button-row{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }
  body[data-page="services"] .button-row .btn{
    width:100%;
    min-height:52px;
  }
}
@media(max-width:380px){
  body[data-page="services"] .service-card{
    padding:18px 16px;
  }
  body[data-page="services"] .pill{
    font-size:8.8px;
    padding:6px 7px;
  }
}


/* V2.8.57 - Premium editorial atelier visual + review proof polish
   Scope: visual hierarchy, portfolio/showcase rhythm, review proof update styling.
   No service, price, payment, Planway, schema route or tracking changes. */
:root{
  --atelier-rose:#cdb7aa;
  --atelier-warm-line:rgba(42,36,30,.105);
  --atelier-glass:rgba(255,250,243,.62);
}
body{
  background:
    radial-gradient(circle at 8% -8%,rgba(255,250,243,.92),transparent 34%),
    radial-gradient(circle at 88% 6%,rgba(205,183,170,.28),transparent 32%),
    linear-gradient(180deg,#fbf7f0 0%,#f7f1e8 48%,#efe5d9 100%);
}
.topbar{
  background:rgba(251,247,240,.86);
  border-bottom-color:rgba(42,36,30,.10);
  box-shadow:0 16px 44px rgba(41,34,28,.045);
}
.desktop-header-book,.mobile-header-book{
  box-shadow:0 14px 34px rgba(41,34,28,.11),inset 0 1px 0 rgba(255,255,255,.12);
}
.hero{position:relative;overflow:hidden;isolation:isolate;}
.hero::before{
  content:"";
  position:absolute;
  inset:38px max(24px,calc((100vw - 1180px)/2)) auto auto;
  width:min(42vw,520px);
  height:min(42vw,520px);
  border-radius:999px;
  background:radial-gradient(circle,rgba(205,183,170,.26),transparent 67%);
  filter:blur(8px);
  z-index:-1;
  pointer-events:none;
}
.display{text-wrap:balance;}
.hero-copy,.hero-quote{text-wrap:balance;}
.hero-quote{
  font-family:var(--serif);
  color:rgba(41,34,28,.82);
}
.hero-card-clean{
  box-shadow:0 36px 96px rgba(41,34,28,.145),0 2px 0 rgba(255,255,255,.65) inset;
}
.hero-card::after,.hero-card-clean::after{
  inset:16px;
  border-color:rgba(255,255,255,.58);
}
.image-label{
  background:rgba(255,250,243,.91);
  border:1px solid rgba(42,36,30,.075);
  box-shadow:0 14px 36px rgba(41,34,28,.105);
}
.trust-strip,.proof-strip{
  background:linear-gradient(145deg,rgba(255,250,243,.68),rgba(255,255,255,.38));
  border-color:rgba(42,36,30,.11);
  box-shadow:0 18px 54px rgba(41,34,28,.055),inset 0 1px 0 rgba(255,255,255,.58);
}
.trust-value,.proof-strip strong{letter-spacing:-.035em;}
.service-card,.panel,.review,.guide-card,.work-card,.signal-card,.choice-card{
  background:linear-gradient(180deg,rgba(255,250,243,.62),rgba(255,255,255,.34));
  border-color:rgba(42,36,30,.10);
}
.service-card:hover,.work-card:hover,.review:hover,.guide-card:hover{
  box-shadow:0 28px 70px rgba(41,34,28,.09);
}
.work-card{
  position:relative;
  background:linear-gradient(180deg,rgba(255,250,243,.58),rgba(255,255,255,.30));
}
.work-card img{
  transition:transform .62s cubic-bezier(.2,.7,.2,1),filter .62s ease;
  filter:saturate(.96) contrast(1.015);
}
.work-card:hover img{transform:scale(1.025);filter:saturate(1.02) contrast(1.02);}
.review-fresh{
  background:
    radial-gradient(circle at 88% 0%,rgba(205,183,170,.23),transparent 44%),
    linear-gradient(145deg,rgba(255,250,243,.78),rgba(255,255,255,.38));
  border-color:rgba(42,36,30,.15);
  box-shadow:0 24px 64px rgba(41,34,28,.075),inset 0 1px 0 rgba(255,255,255,.64);
}
.review-fresh .author::before{
  content:"Latest verified Google review";
  display:block;
  margin-bottom:9px;
  font-family:var(--sans);
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(127,118,109,.88);
  font-weight:800;
}
body:lang(da) .review-fresh .author::before{content:"Nyeste verificerede Google-anmeldelse";}
.stars{color:#463c34;}
.quote{text-wrap:balance;}
@media(min-width:861px){
  .hero{padding-top:104px;padding-bottom:96px;}
  .hero-grid{grid-template-columns:minmax(0,.96fr) minmax(390px,.94fr);gap:82px;}
  .visual-stack{min-height:648px;}
  .hero-card-clean{width:92%;right:0;top:4px;border-radius:46px;}
  .hero-card-clean img,.hero-card img{height:636px;}
  .trust-strip{max-width:860px;margin-top:34px;}
  .home-work-preview .portfolio-grid{grid-template-columns:1.16fr .92fr .92fr;align-items:stretch;}
  .home-work-preview .work-card:first-child{border-radius:34px;}
  .home-work-preview .work-card:first-child img{height:414px;}
  .home-work-preview .work-card:not(:first-child) img{height:392px;}
  body[data-page="work"] .portfolio-grid{grid-template-columns:repeat(6,1fr);gap:20px;}
  body[data-page="work"] .work-card{grid-column:span 2;border-radius:30px;}
  body[data-page="work"] .work-card:nth-child(1),
  body[data-page="work"] .work-card:nth-child(2){grid-column:span 3;border-radius:38px;}
  body[data-page="work"] .work-card:nth-child(1) img,
  body[data-page="work"] .work-card:nth-child(2) img{height:520px;}
  body[data-page="work"] .work-card img{height:392px;}
  .home-reviews-preview .review-page-grid{grid-template-columns:1.16fr .92fr .92fr;}
  .home-reviews-preview .review-fresh{min-height:286px;}
  body[data-page="reviews"] .review-page-grid{grid-template-columns:1.16fr .92fr;}
  body[data-page="reviews"] .review-page-grid .review-fresh{grid-column:1/-1;min-height:220px;}
  body[data-page="reviews"] .review-page-grid .review-fresh .quote{font-size:30px;max-width:960px;}
}
@media(max-width:860px){
  .hero{padding-top:32px;padding-bottom:44px;}
  .hero-grid{gap:20px;}
  .hero::before{width:90vw;height:90vw;right:-30vw;top:10vh;}
  .display{letter-spacing:-.058em;}
  .trust-strip{box-shadow:0 16px 44px rgba(41,34,28,.055);}
  .hero-card-clean{border-radius:28px;}
  .hero-card::after,.hero-card-clean::after{inset:10px;border-radius:22px;}
  .home-work-preview .portfolio-grid,
  body[data-page="work"] .portfolio-grid{gap:12px;}
  .work-card{border-radius:24px;}
  .work-card img{height:clamp(260px,72vw,360px);}
  .review-fresh .author::before{font-size:9.2px;letter-spacing:.13em;}
  body[data-page="reviews"] .review-page-grid{gap:12px;}
}
@media(max-width:620px){
  .home-reviews-preview .review-page-grid .review-large:nth-child(n+3){display:none;}
  .quote{font-size:23px;line-height:1.30;}
  .review-large{min-height:auto;}
  .trust-item{min-height:92px;}
}


/* V2.8.58 - Premium positioning and mobile service rhythm polish
   Cache marker: v29-35-japanese-mobile-price-visible
   Scope: stronger private Valby atelier line, service-page scan rhythm and repetition control only.
   No prices, services, Planway links, payment wording, tracking, schema routes or images changed. */
.hero-copy{max-width:640px;}
.hero-quote{max-width:560px;}
body[data-page="services"] .route-hero .lead{max-width:850px;}
body[data-page="services"] .service-card h3{text-wrap:balance;}
body[data-page="services"] .service-card p,
body[data-page="services"] .best{text-wrap:pretty;}
@media(max-width:980px){
  body[data-page="services"] .route-hero{padding-top:52px;padding-bottom:32px;}
  body[data-page="services"] .route-hero .lead{max-width:680px;}
  body[data-page="services"] .service-group{margin-top:34px;}
  body[data-page="services"] .category-title{margin-bottom:14px;}
  body[data-page="services"] .service-card{padding:20px 19px;border-radius:23px;}
  body[data-page="services"] .service-card p{line-height:1.50;}
  body[data-page="services"] .best{margin-top:12px;padding:13px 14px;}
}
@media(max-width:620px){
  .hero-copy{font-size:15.5px;line-height:1.56;}
  .hero-quote{font-size:18px;line-height:1.45;margin-top:12px;}
  body[data-page="services"] .route-hero{padding-top:32px;padding-bottom:24px;}
  body[data-page="services"] .section{padding-block:44px;}
  body[data-page="services"] .section-tight{padding-block:38px;}
  body[data-page="services"] .service-group{margin-top:28px;}
  body[data-page="services"] .category-title{font-size:clamp(30px,8.4vw,38px);}
  body[data-page="services"] .service-grid{gap:9px;}
  body[data-page="services"] .service-card{padding:18px 16px;border-radius:21px;}
  body[data-page="services"] .service-card h3{font-size:clamp(22px,6.4vw,27px);}
  body[data-page="services"] .service-card p{font-size:14px;line-height:1.44;}
  body[data-page="services"] .best{font-size:12.9px;line-height:1.40;padding:11px 12px;border-radius:15px;}
  body[data-page="services"] .pill{font-size:8.7px;padding:5.5px 7px;}
}


/* V2.8.59 - Final editorial compression and Work page polish
   Cache marker: v29-35-japanese-mobile-price-visible
   Scope: lighter Services/Work reading rhythm, more image-led portfolio presentation and future real-photo readiness.
   No prices, services, Planway links, payment wording, tracking, schema routes or images changed. */
body[data-page="work"] .route-hero .lead{max-width:820px;}
body[data-page="work"] .portfolio-grid-final .work-body{padding:20px 21px 22px;}
body[data-page="work"] .portfolio-grid-final .work-card p{font-size:14.5px;line-height:1.54;margin-bottom:0;}
body[data-page="work"] .portfolio-grid-final .tag-row{margin-bottom:12px;}
body[data-page="work"] .portfolio-grid-final .tag{padding:6px 9px;font-size:9.4px;letter-spacing:.11em;background:rgba(255,255,255,.32);}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(4),
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(9){grid-column:span 3;}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(4) img,
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(9) img{height:460px;}
body[data-page="work"] .work-language span{font-size:12.7px;line-height:1.55;}
body[data-page="services"] .route-hero .lead{max-width:780px;}
body[data-page="services"] .service-card p{margin-bottom:0;}
body[data-page="services"] .best{font-size:13.5px;line-height:1.48;}
body[data-page="services"] .service-card .best strong{white-space:nowrap;}
@media(max-width:980px){
  body[data-page="work"] .portfolio-grid-final .work-card:nth-child(4),
  body[data-page="work"] .portfolio-grid-final .work-card:nth-child(9){grid-column:auto;}
  body[data-page="work"] .portfolio-grid-final .work-card:nth-child(4) img,
  body[data-page="work"] .portfolio-grid-final .work-card:nth-child(9) img{height:clamp(280px,74vw,380px);}
  body[data-page="work"] .portfolio-grid-final .tag-row .tag:nth-child(n+3){display:none;}
  body[data-page="work"] .portfolio-grid-final .work-body{padding:17px 17px 19px;}
  body[data-page="work"] .portfolio-grid-final .work-card p{font-size:13.8px;line-height:1.44;}
}
@media(max-width:620px){
  body[data-page="work"] .route-hero{padding-top:32px;padding-bottom:24px;}
  body[data-page="work"] .section{padding-block:48px;}
  body[data-page="work"] .section-tight{padding-block:38px;}
  body[data-page="work"] .portfolio-grid-final{gap:10px;}
  body[data-page="work"] .portfolio-grid-final .work-card{border-radius:22px;}
  body[data-page="work"] .portfolio-grid-final .work-card img{height:clamp(268px,76vw,348px);}
  body[data-page="work"] .portfolio-grid-final .work-card h3{font-size:clamp(23px,6.8vw,28px);margin-bottom:8px;}
  body[data-page="work"] .portfolio-grid-final .work-card p{font-size:13.2px;line-height:1.38;}
  body[data-page="work"] .work-language{gap:9px;}
  body[data-page="work"] .work-language div{padding:18px;border-radius:20px;}
  body[data-page="work"] .work-language span{font-size:12.5px;line-height:1.48;}
}

/* V2.8.60 - Privacy-first measurement decision and final service rhythm polish
   Cache marker: v29-35-japanese-mobile-price-visible
   Scope: document denied-by-default Google consent strategy, finish mobile service separation and reduce repeated footer phrasing.
   No prices, services, Planway links, payment wording, images, schema routes or Google Ads IDs changed. */
body[data-page="services"] .service-group{position:relative;}
body[data-page="services"] .service-group + .service-group{
  margin-top:56px;
  padding-top:38px;
  border-top:1px solid rgba(42,36,30,.105);
}
body[data-page="services"] .category-title{
  display:flex;
  align-items:flex-end;
  gap:18px;
}
body[data-page="services"] .category-title::after{
  content:"";
  flex:1 1 auto;
  min-width:48px;
  height:1px;
  margin-bottom:.23em;
  background:linear-gradient(90deg,rgba(42,36,30,.18),rgba(42,36,30,.035),transparent);
}
body[data-page="services"] .service-card .best{
  background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,250,243,.16));
}
@media(max-width:980px){
  body[data-page="services"] .service-group + .service-group{
    margin-top:36px;
    padding-top:26px;
  }
  body[data-page="services"] .category-title{gap:12px;}
  body[data-page="services"] .category-title::after{min-width:34px;}
  body[data-page="services"] .final-booking .btn-primary,
  body[data-page="services"] #bridal-booking-guide .btn-primary{
    box-shadow:0 16px 34px rgba(41,34,28,.14);
  }
}
@media(max-width:620px){
  body[data-page="services"] .service-group + .service-group{
    margin-top:30px;
    padding-top:22px;
  }
  body[data-page="services"] .category-title{margin-bottom:12px;}
  body[data-page="services"] .service-meta{margin-bottom:10px;}
  body[data-page="services"] .best{margin-top:10px;}
  body[data-page="services"] .category-title::after{min-width:28px;}
}


/* V2.8.61 - Bridal elevation and editorial eyebrow polish
   Cache marker: v29-35-japanese-mobile-price-visible
   Scope: homepage bridal prominence and subtle couture eyebrow typography only.
   No prices, services, Planway links, payment wording, images, schema routes, consent strategy or Google Ads IDs changed. */
.home-bridal-preview{
  padding-block:118px;
  background:
    radial-gradient(circle at 86% 14%,rgba(205,183,170,.20),transparent 36%),
    linear-gradient(135deg,rgba(255,250,243,.64),rgba(232,222,211,.28));
}
.home-bridal-preview .bridal-home-grid{
  grid-template-columns:minmax(0,.94fr) minmax(360px,.82fr);
  gap:66px;
  align-items:center;
}
.home-bridal-copy .big-title{max-width:780px;}
.home-bridal-copy .lead{
  max-width:700px;
  font-size:19px;
  line-height:1.68;
}
.bridal-home-note{
  margin:22px 0 0;
  color:rgba(41,34,28,.72);
  font-size:12px;
  line-height:1.55;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-weight:800;
}
.bridal-detail-row{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:22px 0 0;
  max-width:680px;
}
.bridal-detail-row span{
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(42,36,30,.12);
  border-radius:999px;
  padding:8px 12px;
  background:rgba(255,250,243,.44);
  color:rgba(78,70,62,.82);
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-weight:800;
}
.home-bridal-preview .button-row{margin-top:30px;}
.home-bridal-portrait{
  width:min(100%,470px);
  justify-self:end;
  border-radius:40px;
  box-shadow:0 30px 76px rgba(41,34,28,.12);
}
.home-bridal-portrait img{
  height:560px;
  width:100%;
  object-fit:cover;
  object-position:center;
}
.home-bridal-portrait::after{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(255,255,255,.52);
  border-radius:28px;
  pointer-events:none;
}
@media(max-width:980px){
  .home-bridal-preview{padding-block:76px;}
  .home-bridal-preview .bridal-home-grid{grid-template-columns:1fr;gap:34px;}
  .home-bridal-copy .lead{font-size:17px;line-height:1.58;}
  .home-bridal-portrait{width:100%;justify-self:stretch;}
  .home-bridal-portrait img{height:430px;}
}
@media(max-width:620px){
  .home-bridal-preview{padding-block:56px;}
  .home-bridal-copy .lead{font-size:15.4px;line-height:1.52;}
  .bridal-home-note{font-size:10.4px;letter-spacing:.105em;margin-top:17px;}
  .bridal-detail-row{gap:7px;margin-top:17px;}
  .bridal-detail-row span{font-size:8.8px;letter-spacing:.105em;padding:7px 9px;}
  .home-bridal-preview .button-row{margin-top:24px;}
  .home-bridal-portrait img{height:clamp(310px,84vw,390px);}
}


/* V2.8.62 - Contrast and cleanup patch
   Cache marker: v29-35-japanese-mobile-price-visible
   Scope: darker accessible text tokens, consolidated eyebrow typography, repaired private package metadata and historical cache-marker notes.
   No prices, services, Planway links, payment wording, images, schema routes, consent strategy or Google Ads IDs changed. */

/* V2.8.65 - Bridal hero emotional refinement
   Cache marker history: v29-35-japanese-mobile-price-visible
   Scope: homepage bridal copy refinement only.
   No service names, prices, durations, payment wording, Planway links, images, schema routes, consent strategy or Google Ads IDs changed. */
body[data-page="services"] .service-card .best strong{
  display:block;
  margin-bottom:3px;
}
body[data-page="services"] .service-card{
  min-height:0;
}
@media(max-width:980px){
  body[data-page="services"] .service-group + .service-group{
    margin-top:32px;
    padding-top:24px;
  }
  body[data-page="services"] .service-card{
    padding:19px 18px;
  }
  body[data-page="services"] .service-card h3{
    margin-bottom:7px;
  }
  body[data-page="services"] .service-card p{
    line-height:1.44;
  }
  body[data-page="services"] .best{
    margin-top:10px;
    padding:11px 12px;
  }
}
@media(max-width:620px){
  body[data-page="services"] .route-hero .lead{
    font-size:14.4px;
    line-height:1.48;
  }
  body[data-page="services"] .service-group + .service-group{
    margin-top:26px;
    padding-top:20px;
  }
  body[data-page="services"] .category-title{
    margin-bottom:10px;
  }
  body[data-page="services"] .service-grid{
    gap:8px;
  }
  body[data-page="services"] .service-card{
    padding:16px 15px 17px;
    border-radius:20px;
  }
  body[data-page="services"] .service-meta{
    gap:5px;
    margin-bottom:8px;
  }
  body[data-page="services"] .service-meta .pill:nth-child(n+3){
    display:none;
  }
  body[data-page="services"] .service-card h3{
    font-size:clamp(22px,6.2vw,26px);
    margin-bottom:6px;
  }
  body[data-page="services"] .service-card p{
    font-size:13.85px;
    line-height:1.40;
  }
  body[data-page="services"] .best{
    font-size:12.75px;
    line-height:1.36;
    padding:10px 11px;
    margin-top:9px;
  }
}


/* V2.8.66 - Service card alignment polish
   Cache marker: v29-35-japanese-mobile-price-visible
   Scope: align Best for boxes across service cards on wider screens only. No copy, price, booking, payment, tracking, image or schema changes. */
@media(min-width:981px){
  .service-card{
    display:flex;
    flex-direction:column;
  }
  .service-card .best{
    margin-top:auto;
    min-height:118px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .home-service-preview .service-card .best{
    min-height:128px;
  }
}
@media(min-width:981px) and (max-width:1180px){
  .service-card .best{
    min-height:108px;
  }
  .home-service-preview .service-card .best{
    min-height:118px;
  }
}


/* V2.8.67 - Bridal editorial layout polish
   Cache marker: v29-35-japanese-mobile-price-visible
   Scope: bridal route hero scale, long editorial-note readability and whole-site long-copy guardrails.
   No prices, services, Planway links, payment wording, images, schema routes, consent strategy or Google Ads IDs changed. */
body[data-page="bridal"] .bridal-hero{
  padding-block:clamp(68px,7vw,112px);
}
body[data-page="bridal"] .bridal-hero .shell.bridal-grid{
  align-items:center;
}
body[data-page="bridal"] .bridal-hero .route-title{
  font-size:clamp(50px,4.9vw,76px);
  line-height:.94;
  max-width:680px;
}
body[data-page="bridal"] .bridal-hero .lead{
  max-width:560px;
  font-size:18px;
  line-height:1.58;
}
body[data-page="bridal"] .bridal-note{
  font-family:var(--sans);
  font-size:15.2px;
  line-height:1.72;
  letter-spacing:0;
  color:var(--muted);
  max-width:560px;
  margin-top:24px;
  padding:19px 22px 19px 24px;
  border:1px solid rgba(42,36,30,.11);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.64),rgba(255,250,243,.34));
  box-shadow:0 14px 42px rgba(41,34,28,.055);
  position:relative;
}
body[data-page="bridal"] .bridal-note::before{
  content:"";
  position:absolute;
  left:0;
  top:22px;
  bottom:22px;
  width:1px;
  background:rgba(118,105,94,.36);
}
body[data-page="bridal"] .bridal-hero .bridal-image-grid{
  width:min(100%,680px);
  max-width:680px;
}
body[data-page="bridal"] .bridal-callout .callout-line{
  font-size:clamp(34px,3.35vw,52px);
  line-height:1.04;
  max-width:760px;
}
body[data-page="bridal"] .bridal-callout .lead,
body[data-page="bridal"] .final-booking .lead{
  max-width:760px;
  font-size:16px;
  line-height:1.66;
}
body[data-page="bridal"] .grid-head .big-title,
body[data-page="work"] .grid-head .big-title,
body[data-page="services"] .grid-head .big-title{
  max-width:760px;
}
@media(max-width:980px){
  body[data-page="bridal"] .bridal-hero{padding-block:58px 48px;}
  body[data-page="bridal"] .bridal-hero .route-title{font-size:clamp(44px,10vw,64px);max-width:100%;}
  body[data-page="bridal"] .bridal-hero .lead{font-size:16px;line-height:1.56;max-width:660px;}
  body[data-page="bridal"] .bridal-note{font-size:14.5px;line-height:1.62;max-width:660px;margin-top:18px;padding:16px 18px 16px 20px;border-radius:20px;}
  body[data-page="bridal"] .bridal-callout .callout-line{font-size:clamp(34px,8vw,48px);}
}
@media(max-width:620px){
  body[data-page="bridal"] .bridal-hero{padding-block:44px 40px;}
  body[data-page="bridal"] .bridal-hero .route-title{font-size:clamp(40px,12vw,56px);line-height:.96;}
  body[data-page="bridal"] .bridal-hero .lead{font-size:14.8px;line-height:1.52;}
  body[data-page="bridal"] .bridal-note{font-size:13.8px;line-height:1.58;padding:14px 15px 14px 17px;}
  body[data-page="bridal"] .bridal-callout .callout-line{font-size:clamp(32px,9.8vw,44px);line-height:1.02;}
}

/* V2.8.68 - service menu restructure */
body[data-page="services"] .service-intro{
  margin:0 0 20px;
  padding:22px 24px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.56),rgba(255,250,243,.30));
}
body[data-page="services"] .service-intro h3{
  font-family:var(--serif);
  font-size:clamp(25px,2.2vw,34px);
  line-height:1.06;
  letter-spacing:-.03em;
  margin:0 0 10px;
}
body[data-page="services"] .service-intro p{
  color:var(--muted);
  line-height:1.58;
  margin:6px 0 0;
  max-width:900px;
}
@media(max-width:620px){
  body[data-page="services"] .service-intro{padding:18px 16px;border-radius:20px;margin-bottom:14px;}
  body[data-page="services"] .service-intro p{font-size:14px;line-height:1.48;}
}

/* V2.8.69 - Work gallery balance polish | Cache marker: v29-35-japanese-mobile-price-visible */


/* V2.8.70 - Service menu title and card polish | Cache marker: v29-35-japanese-mobile-price-visible
   Keeps long service titles calm and improves Services card rhythm without changing business logic. */
.service-card h3{text-wrap:balance;hyphens:none;}
.service-card .best{text-wrap:pretty;}
@media(min-width:861px){
  #service-menu-shell .service-card h3{max-width:12.5ch;}
  #service-menu-shell #gel-removal-add-on-new-set h3,
  #service-menu-shell #nail-repair-after-10-days h3{max-width:14.5ch;}
  #service-menu-shell #gel-refill-babyboomer h3,
  #service-menu-shell #gel-extensions-babyboomer h3{max-width:18ch;}
}


/* V2.8.71 - Services navigation and bridal hero readability polish | Cache marker: v29-35-japanese-mobile-price-visible
   Adds a compact service category jump menu and softens the bridal hero heading/paragraph scale.
   No services, prices, durations, Planway links, payment wording, schema, consent or Google Ads IDs changed. */
body[data-page="services"] .service-jump-nav{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
  padding:16px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.58),rgba(255,250,243,.36));
}
body[data-page="services"] .service-jump-label{
  flex:0 0 auto;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:800;
  color:var(--muted);
  margin-right:2px;
}
body[data-page="services"] .service-jump-nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.48);
  color:var(--deep);
  font-size:10px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:background .2s ease,transform .2s ease,border-color .2s ease;
}
body[data-page="services"] .service-jump-nav a:hover,
body[data-page="services"] .service-jump-nav a:focus-visible{
  background:rgba(255,255,255,.78);
  border-color:rgba(42,36,30,.20);
  transform:translateY(-1px);
}
body[data-page="services"] .service-group{
  scroll-margin-top:118px;
}
body[data-page="services"] .service-group + .service-group{
  margin-top:74px;
  padding-top:18px;
}
body[data-page="services"] .service-group + .service-group::before{
  opacity:.72;
}
body[data-page="bridal"] .bridal-hero .route-title{
  font-size:clamp(44px,4.35vw,66px);
  line-height:.98;
  max-width:650px;
  margin-bottom:20px;
}
body[data-page="bridal"] .bridal-hero .lead{
  max-width:610px;
  font-size:17px;
  line-height:1.62;
}
body[data-page="bridal"] .bridal-note{
  max-width:610px;
  margin-top:20px;
}
@media(max-width:980px){
  body[data-page="services"] .service-jump-nav{
    overflow-x:auto;
    flex-wrap:nowrap;
    justify-content:flex-start;
    padding:14px;
    gap:8px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  body[data-page="services"] .service-jump-nav::-webkit-scrollbar{display:none;}
  body[data-page="services"] .service-jump-label{position:sticky;left:0;z-index:1;background:linear-gradient(90deg,rgba(255,250,243,.96),rgba(255,250,243,.76));padding-right:8px;}
  body[data-page="services"] .service-group{scroll-margin-top:96px;}
  body[data-page="services"] .service-group + .service-group{margin-top:50px;padding-top:8px;}
  body[data-page="bridal"] .bridal-hero .route-title{font-size:clamp(42px,9.2vw,58px);line-height:1;max-width:100%;}
  body[data-page="bridal"] .bridal-hero .lead{font-size:15.8px;line-height:1.56;}
}
@media(max-width:620px){
  body[data-page="services"] .service-jump-nav{margin-top:18px;margin-inline:-2px;padding:12px;border-radius:20px;}
  body[data-page="services"] .service-jump-nav a{min-height:36px;padding:8px 11px;font-size:9px;letter-spacing:.09em;}
  body[data-page="services"] .service-jump-label{font-size:9px;letter-spacing:.12em;}
  body[data-page="bridal"] .bridal-hero .route-title{font-size:clamp(38px,11.2vw,52px);line-height:1.01;}
  body[data-page="bridal"] .bridal-hero .lead{font-size:14.7px;line-height:1.52;}
}

/* V2.8.73 - Photo selection public update | Cache marker: v29-35-japanese-mobile-price-visible */


/* V2.8.74 - selected photo placement polish */
.service-photo-break{
  margin:26px 0 30px;
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1fr);
  gap:24px;
  align-items:center;
  padding:18px;
  border:1px solid var(--line);
  border-radius:34px;
  background:rgba(255,255,255,.34);
  box-shadow:0 18px 52px rgba(41,34,28,.052);
}
.service-photo-break figure{position:relative;margin:0;border-radius:26px;overflow:hidden;background:var(--taupe-soft);}
.service-photo-break img{width:100%;height:360px;object-fit:cover;object-position:center;}
.service-photo-copy{padding:8px 16px 8px 2px;}
.service-photo-copy h3{font-family:var(--serif);font-size:clamp(30px,3vw,46px);letter-spacing:-.035em;line-height:1.02;margin:0 0 12px;}
.service-photo-copy p{color:var(--muted);font-size:16px;line-height:1.62;max-width:520px;}
.atelier-moment-grid{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1fr);gap:28px;align-items:center;}
.atelier-moment-photo img{height:520px;object-position:center;}
.atelier-moment-copy{padding:42px;}
.atelier-moment-copy .big-title{font-size:clamp(40px,4.6vw,70px);}
@media(max-width:980px){
  .service-photo-break,.atelier-moment-grid{grid-template-columns:1fr;}
  .service-photo-break img,.atelier-moment-photo img{height:clamp(320px,72vw,460px);}
  .service-photo-copy{padding:4px 8px 10px;}
}
@media(max-width:620px){
  .service-photo-break{padding:12px;border-radius:28px;margin:20px 0 24px;}
  .service-photo-break figure{border-radius:22px;}
  .service-photo-break img{height:clamp(285px,74vw,380px);}
  .service-photo-copy h3{font-size:clamp(28px,8vw,36px);}
  .service-photo-copy p{font-size:14.5px;line-height:1.5;}
  .atelier-moment-copy{padding:28px;}
}

/* V2.8.76 - Natural Look refill price correction | Cache marker: v29-35-japanese-mobile-price-visible */


/* V2.8.76 - Bridal image placement polish | Cache marker: v29-35-japanese-mobile-price-visible */
.bridal-direction-showcase .portfolio-grid{align-items:stretch;}
.bridal-direction-showcase .work-card img{height:390px;object-fit:cover;}
.bridal-direction-showcase .work-card:first-child img{object-position:center center;}
.bridal-direction-showcase .work-card:nth-child(2) img{object-position:center center;}
.bridal-direction-showcase .work-card:nth-child(3) img{object-position:center 48%;}
body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{object-position:center center;}
body[data-page="bridal"] .bridal-image-grid .bridal-veil-visual img{object-position:center center;}
body[data-page="bridal"] .bridal-image-grid .bridal-lace-visual img{object-position:center 46%;}
.home-bridal-portrait img{object-position:center center;}
@media(max-width:700px){
  .bridal-direction-showcase .work-card img{height:clamp(300px,86vw,420px);}
}


/* V2.8.77 - Bridal/work gallery alignment polish | Cache marker: v29-35-japanese-mobile-price-visible */
@media (min-width: 860px){
  .bridal-direction-showcase .tag-row{
    flex-wrap:nowrap;
    gap:6px;
    align-items:center;
  }
  .bridal-direction-showcase .tag-row .tag{
    padding:6px 8px;
    font-size:9px;
    letter-spacing:.095em;
    white-space:nowrap;
  }
  .bridal-direction-showcase .work-card{
    display:flex;
    flex-direction:column;
  }
  .bridal-direction-showcase .work-body{
    flex:1;
  }
}


/* V2.8.78 - Bridal hero brightness and crop polish | Cache marker: v29-35-japanese-mobile-price-visible */
body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
  object-position:54% center;
}
.bridal-direction-showcase .work-card:first-child img{
  object-position:54% center;
}
@media (max-width:1100px){
  body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
    object-position:53% center;
  }
}
@media (max-width:700px){
  body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
    object-position:52% center;
  }
}


/* V2.8.79 - Services editorial trim polish | Cache marker: v29-35-japanese-mobile-price-visible */
body[data-page="services"] .service-intro p{
  max-width:760px;
}
body[data-page="services"] .service-card p{
  margin-block:0 12px;
}
body[data-page="services"] .service-card p + p{
  margin-top:0;
}
@media(max-width:700px){
  body[data-page="services"] .service-card{
    padding:26px 24px;
  }
}


/* V2.8.80 - Bridal hero light image and gallery restore | Cache marker: v29-35-japanese-mobile-price-visible */
body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
  object-position:center center;
}
@media (min-width:1101px){
  body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
    object-position:50% 50%;
  }
}


/* V2.8.88 - Bridal hero source sync and gallery restore | Cache marker: v29-35-japanese-mobile-price-visible */
body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
  object-position:center center;
}
.bridal-direction-showcase .work-card:first-child img{
  object-position:center center;
}


/* V2.8.88 - Work page gilded bridal French addition | Cache marker: v29-35-japanese-mobile-price-visible */


/* V2.8.88 - Work gallery order balance polish | Cache marker: v29-35-japanese-mobile-price-visible */


/* V2.8.88 - Bridal bright image replacement | Cache marker: v29-35-japanese-mobile-price-visible */


/* V2.8.88 - Final bridal image crop QA polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: page-by-page object-position tuning for bridal and high-value Work gallery images only. */
body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
  object-position:50% 50%;
}
body[data-page="bridal"] .bridal-image-grid .bridal-veil-visual img{
  object-position:52% 48%;
}
body[data-page="bridal"] .bridal-image-grid .bridal-lace-visual img{
  object-position:50% 45%;
}
.bridal-direction-showcase .work-card:nth-child(1) img{
  object-position:50% 50%;
}
.bridal-direction-showcase .work-card:nth-child(2) img{
  object-position:52% 48%;
}
.bridal-direction-showcase .work-card:nth-child(3) img{
  object-position:50% 45%;
}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(1) img{
  object-position:50% 50%;
}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(2) img{
  object-position:50% 48%;
}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(3) img{
  object-position:52% 49%;
}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(4) img{
  object-position:52% 48%;
}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(5) img{
  object-position:50% 50%;
}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(6) img{
  object-position:52% 48%;
}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(7) img{
  object-position:50% 45%;
}
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(8) img{
  object-position:50% 48%;
}
.home-bridal-portrait img{
  object-position:50% 50%;
}
.home-work-preview .work-card img,
.home-proof-gallery .work-card img{
  object-position:center center;
}
@media(max-width:700px){
  body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
    object-position:50% 50%;
  }
  body[data-page="work"] .portfolio-grid-final .work-card:nth-child(-n+8) img{
    object-position:center center;
  }
}


/* V2.8.88 - Bridal image cache-bust sync | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: force approved bright bridal image filenames across Bridal hero, homepage preview, Work cards and social previews. */
body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img,
.home-bridal-portrait img,
body[data-page="work"] .portfolio-grid-final .work-card:nth-child(5) img,
.bridal-direction-showcase .work-card:nth-child(1) img{
  object-position:50% 50%;
}


/* V2.8.88 - Services quick-choice and booking clarity | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: faster service decision path and calmer early booking CTA on Services pages only. */
body[data-page="services"] .route-hero-actions{
  margin-top:28px;
}
body[data-page="services"] .services-choice-panel{
  padding:clamp(28px,4vw,46px);
}
body[data-page="services"] .services-choice-head{
  align-items:end;
  gap:24px;
}
body[data-page="services"] .services-choice-copy{
  max-width:560px;
}
body[data-page="services"] .service-choice-matrix{
  grid-template-columns:repeat(auto-fit,minmax(205px,1fr));
  gap:14px;
  margin-top:26px;
}
body[data-page="services"] .service-choice-card{
  display:flex;
  flex-direction:column;
  min-height:238px;
  text-decoration:none;
  color:inherit;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
}
body[data-page="services"] .service-choice-card:hover,
body[data-page="services"] .service-choice-card:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(42,36,30,.18);
  background:rgba(255,255,255,.58);
  box-shadow:0 18px 48px rgba(41,34,28,.07);
}
body[data-page="services"] .service-choice-card p{
  flex:1;
}
body[data-page="services"] .service-choice-card strong{
  display:inline-flex;
  width:max-content;
  margin-top:18px;
  border-top:1px solid var(--line);
  padding-top:12px;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--deep);
}
@media(max-width:780px){
  body[data-page="services"] .route-hero-actions{
    margin-top:22px;
  }
  body[data-page="services"] .route-hero-actions .btn,
  body[data-page="services"] .services-choice-copy .btn{
    width:100%;
    justify-content:center;
  }
  body[data-page="services"] .services-choice-head{
    align-items:start;
  }
  body[data-page="services"] .service-choice-matrix{
    grid-template-columns:1fr;
    gap:11px;
    margin-top:20px;
  }
  body[data-page="services"] .service-choice-card{
    min-height:auto;
    padding:19px 18px;
  }
  body[data-page="services"] .service-choice-card strong{
    margin-top:12px;
    padding-top:10px;
  }
}
.booking-bridge-hero { padding-top: clamp(3.5rem, 7vw, 6rem); }
.booking-hero-grid { align-items: stretch; }
.booking-panel { align-self: center; background: linear-gradient(145deg, rgba(255, 252, 247, 0.96), rgba(244, 236, 225, 0.94)); border-color: rgba(144, 109, 82, 0.24); }
.booking-panel-kicker { display: block; font-size: 0.76rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--muted); margin-bottom: 0.75rem; }
.booking-note-list { margin: 1.1rem 0 0; padding: 0; list-style: none; display: grid; gap: 0.75rem; }
.booking-note-list li { position: relative; padding-left: 1.35rem; color: var(--ink-soft); line-height: 1.65; }
.booking-note-list li::before { content: ""; position: absolute; left: 0; top: 0.72em; width: 0.42rem; height: 0.42rem; border-radius: 999px; background: var(--accent); opacity: 0.7; }
.booking-step-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.booking-route-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.booking-calendar-grid { align-items: start; }
.booking-calendar-panel .lead { max-width: 46rem; }
.booking-fallback-note { margin-top: 1rem; color: var(--muted); font-size: 0.92rem; }
.booking-practical-list { display: grid; gap: 1rem; margin-top: 1.2rem; }
.booking-practical-list article { padding: 1rem 0; border-top: 1px solid rgba(144, 109, 82, 0.18); }
.booking-practical-list article:first-child { border-top: 0; padding-top: 0; }
.booking-practical-list span { display: block; font-size: 0.75rem; letter-spacing: 0.17em; text-transform: uppercase; color: var(--muted); margin-bottom: 0.35rem; }
.booking-practical-list p { margin: 0; color: var(--ink-soft); line-height: 1.65; }
@media (max-width: 860px) {
  .booking-step-grid, .booking-route-grid { grid-template-columns: 1fr; }
  .booking-bridge-hero { padding-top: 2.5rem; }
  .booking-panel { margin-top: 0.75rem; }
}


/* V2.8.91 - Mobile Services Skimmability Polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: mobile-only service-card detail toggle. Keeps service name, price, duration and first description visible. No prices, services, booking, Planway tracking, schema, images or SEO routes changed. */
.service-details-toggle{display:none;}
body[data-page="services"] .service-card-details{display:block;}
@media(max-width:620px){
  html.js body[data-page="services"] .service-details-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:44px;
    margin-top:12px;
    border:1px solid rgba(42,36,30,.12);
    border-radius:999px;
    background:rgba(255,250,243,.62);
    color:var(--deep);
    font-size:10.5px;
    letter-spacing:.14em;
    text-transform:uppercase;
    font-weight:800;
    cursor:pointer;
    transition:background .2s ease,border-color .2s ease,transform .2s ease;
  }
  html.js body[data-page="services"] .service-details-toggle:hover,
  html.js body[data-page="services"] .service-details-toggle:focus-visible{
    background:rgba(255,255,255,.82);
    border-color:rgba(42,36,30,.22);
    transform:translateY(-1px);
  }
  html.js body[data-page="services"] .service-details-toggle:focus-visible{
    outline:2px solid rgba(41,34,28,.62);
    outline-offset:3px;
  }
  html.js body[data-page="services"] .service-card-details{
    max-height:0;
    opacity:0;
    overflow:hidden;
    visibility:hidden;
    transition:max-height .28s ease,opacity .22s ease,visibility .22s ease;
  }
  html.js body[data-page="services"] .service-card.is-details-open .service-card-details{
    max-height:420px;
    opacity:1;
    visibility:visible;
  }
  html.js body[data-page="services"] .service-card:not(.is-details-open) .service-card-details .best{
    margin-top:0;
  }
}


/* V2.8.93 - Integrated Reservation Experience Polish | Cache marker: v29-35-japanese-mobile-price-visible */
body[data-page="book"] .booking-reservation-hero { padding-bottom: clamp(2.2rem, 5vw, 4.6rem); }
body[data-page="book"] .reservation-card { position: relative; overflow: hidden; box-shadow: 0 24px 70px rgba(42, 34, 28, 0.09); }
body[data-page="book"] .reservation-card::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 16% 10%, rgba(255, 255, 255, 0.72), transparent 34%), linear-gradient(145deg, rgba(255,255,255,0.22), rgba(144,109,82,0.05)); }
body[data-page="book"] .reservation-card > * { position: relative; }
body[data-page="book"] .reservation-mini-list { margin-top: 1.25rem; display: grid; gap: 0.8rem; }
body[data-page="book"] .reservation-mini-list article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.85rem; align-items: start; padding: 0.95rem 0; border-top: 1px solid rgba(144, 109, 82, 0.16); }
body[data-page="book"] .reservation-mini-list article:first-child { border-top: 0; padding-top: 0; }
body[data-page="book"] .reservation-mini-list span { font-family: var(--serif); font-size: 1.35rem; line-height: 1; color: rgba(144, 109, 82, 0.72); }
body[data-page="book"] .reservation-mini-list strong { display: block; margin-bottom: 0.25rem; color: var(--deep); }
body[data-page="book"] .reservation-mini-list p { margin: 0; color: var(--ink-soft); line-height: 1.55; font-size: 0.95rem; }
body[data-page="book"] .booking-direction-section { padding-top: clamp(2.2rem, 5vw, 4.2rem); }
body[data-page="book"] .booking-direction-grid .route-map-card { background: rgba(255, 252, 247, 0.68); border-color: rgba(144, 109, 82, 0.17); min-height: 0; }
body[data-page="book"] .booking-direction-grid .route-map-card:hover { transform: translateY(-2px); border-color: rgba(144, 109, 82, 0.32); box-shadow: 0 18px 44px rgba(42, 34, 28, 0.07); }
body[data-page="book"] .reservation-panel-primary { background: linear-gradient(145deg, rgba(42, 34, 28, 0.965), rgba(80, 61, 48, 0.94)); color: #fffaf4; border-color: rgba(255,255,255,0.1); }
body[data-page="book"] .reservation-panel-primary .eyebrow,
body[data-page="book"] .reservation-panel-primary .lead,
body[data-page="book"] .reservation-panel-primary .booking-fallback-note { color: rgba(255, 250, 244, 0.76); }
body[data-page="book"] .reservation-panel-primary .big-title { color: #fffaf4; }
body[data-page="book"] .reservation-panel-primary .btn-primary { background: #fffaf4; color: var(--deep); border-color: #fffaf4; }
body[data-page="book"] .reservation-panel-primary .btn-soft { color: #fffaf4; border-color: rgba(255,250,244,0.36); background: rgba(255,255,255,0.06); }
body[data-page="book"] .reservation-etiquette-panel { background: rgba(255, 252, 247, 0.78); }
@media (max-width: 760px) {
  body[data-page="book"] .booking-reservation-hero { padding-top: 2.25rem; }
  body[data-page="book"] .reservation-mini-list article { padding: 0.82rem 0; }
  body[data-page="book"] .booking-direction-section .grid-head { gap: 0.7rem; }
  body[data-page="book"] .booking-direction-grid { gap: 0.7rem; }
  body[data-page="book"] .booking-direction-grid .route-map-card { padding: 0.95rem; }
  body[data-page="book"] .booking-reserve-section { padding-top: 2.2rem; }
}

/* V2.8.94 - branded Planway launch transition */
.mna-planway-launch{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(248,244,238,.74);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease;
}
.mna-planway-launch.is-visible{
  opacity:1;
  pointer-events:auto;
}
.mna-planway-launch-card{
  width:min(420px, 100%);
  padding:30px 26px 28px;
  border:1px solid rgba(78,62,49,.18);
  border-radius:30px;
  background:linear-gradient(145deg, rgba(255,252,247,.96), rgba(244,235,224,.94));
  box-shadow:0 28px 90px rgba(56,42,32,.18);
  text-align:center;
  transform:translateY(8px) scale(.985);
  transition:transform .28s ease;
}
.mna-planway-launch.is-visible .mna-planway-launch-card{
  transform:translateY(0) scale(1);
}
.mna-planway-launch-kicker{
  display:block;
  margin-bottom:10px;
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#8b7161;
}
.mna-planway-launch-title{
  margin:0;
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(2rem, 8vw, 3.1rem);
  line-height:.96;
  color:#3d3028;
  font-weight:500;
}
.mna-planway-launch-copy{
  margin:16px auto 0;
  max-width:30rem;
  color:#6b6259;
  line-height:1.7;
  font-size:.98rem;
}
.mna-planway-launch-line{
  width:54px;
  height:1px;
  margin:20px auto 0;
  background:rgba(90,68,51,.32);
}
@media (prefers-reduced-motion: reduce){
  .mna-planway-launch,
  .mna-planway-launch-card{
    transition:none;
  }
}


/* V2.8.95 - Website consistency final polish | Cache marker: v29-35-japanese-mobile-price-visible */

/* V2.8.97 - Service Card Alignment Polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: homepage service preview card rhythm and internal alignment on wider screens only.
   Keeps all service text, prices, durations, booking routes, Planway tracking, schema, images and mobile behavior unchanged. */
@media(min-width:861px){
  .home-service-preview .service-grid-four{
    align-items:stretch;
  }
  .home-service-preview .service-card{
    height:100%;
    min-height:430px;
    display:grid;
    grid-template-rows:minmax(58px,auto) minmax(98px,auto) minmax(122px,auto) 1fr;
    align-content:start;
  }
  .home-service-preview .service-card .service-meta{
    min-height:58px;
    align-content:start;
    margin-bottom:0;
  }
  .home-service-preview .service-card h3{
    align-self:start;
    margin:0;
    padding-top:2px;
  }
  .home-service-preview .service-card > p:not(.best){
    align-self:start;
    margin:0;
  }
  .home-service-preview .service-card .best{
    align-self:end;
    width:100%;
    min-height:126px;
    margin-top:0;
  }
}
@media(min-width:861px) and (max-width:1180px){
  .home-service-preview .service-card{
    min-height:408px;
    grid-template-rows:minmax(58px,auto) minmax(92px,auto) minmax(118px,auto) 1fr;
  }
  .home-service-preview .service-card .best{
    min-height:116px;
  }
}


/* V2.8.98 - Home Service Title No-Wrap Polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: keeps the homepage BIAB preview title on one line on desktop/wider cards only. No service names, prices, durations, booking routes, schema, images or mobile behavior changed. */
@media(min-width:861px){
  .home-service-preview .service-card:nth-child(3){
    padding-left:24px;
    padding-right:24px;
  }
  .home-service-preview .service-card:nth-child(3) h3{
    white-space:nowrap;
    text-wrap:normal;
    font-size:clamp(23px,1.6vw,27px);
    letter-spacing:-.045em;
  }
}

/* V2.8.99 - Custom Cursor Restore | Cache marker: v29-35-japanese-mobile-price-visible */


/* V2.9.0 - Home Service Chip Row Alignment Polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: wider-screen homepage preview chip alignment only. Keeps service text, prices, durations, booking routes, schema, images, Planway tracking and mobile behavior unchanged. */
@media(min-width:1181px){
  .home-service-preview .shell{
    width:min(1280px,calc(100% - 48px));
  }
  .home-service-preview .service-grid-four{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
  }
  .home-service-preview .service-card{
    padding-left:26px;
    padding-right:26px;
  }
  .home-service-preview .service-card .service-meta{
    display:flex;
    flex-wrap:nowrap;
    gap:6px;
    min-height:38px;
    align-items:flex-start;
  }
  .home-service-preview .service-card .service-meta .pill{
    white-space:nowrap;
    padding:6px 7px;
    font-size:9px;
    letter-spacing:.08em;
  }
  .home-service-preview .service-card h3{
    padding-top:0;
  }
}
@media(min-width:1181px) and (max-width:1260px){
  .home-service-preview .service-card{
    padding-left:22px;
    padding-right:22px;
  }
  .home-service-preview .service-card .service-meta{
    gap:5px;
  }
  .home-service-preview .service-card .service-meta .pill{
    padding:6px 6px;
    font-size:8.6px;
    letter-spacing:.065em;
  }
}

/* V2.9.1 - Services Best-For Alignment Polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: desktop/tablet Services-page card rhythm only. Aligns Best for boxes within service-card rows without changing service text, prices, durations, booking, Planway tracking, schema, images or mobile toggle behavior. */
@media(min-width:621px){
  body[data-page="services"] .service-grid{
    align-items:stretch;
  }
  body[data-page="services"] .service-grid .service-card{
    display:flex;
    flex-direction:column;
  }
  body[data-page="services"] .service-grid .service-card-details{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
  }
  body[data-page="services"] .service-grid .service-card-details .best{
    margin-top:auto;
    min-height:104px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
  }
}
@media(min-width:621px) and (max-width:980px){
  body[data-page="services"] .service-grid .service-card-details .best{
    min-height:96px;
  }
}


/* V2.9.3 - Japanese Manicure Ritual launch | Cache marker: v29-35-japanese-mobile-price-visible */
.new-ritual-feature{display:grid;grid-template-columns:minmax(240px,.68fr) minmax(0,1fr);gap:28px;align-items:center;margin:0 0 26px;padding:18px}
.new-ritual-feature figure{position:relative;margin:0;border-radius:26px;overflow:hidden;background:var(--taupe-soft)}
.new-ritual-feature img{width:100%;height:330px;object-fit:cover;object-position:center}
.new-ritual-copy{padding:10px 18px 10px 4px}
.new-ritual-copy h3,.japanese-ritual-note h3{font-family:var(--serif);font-size:clamp(32px,4vw,56px);line-height:1;letter-spacing:-.04em;margin:0 0 14px;color:#202020}
.new-ritual-copy p,.japanese-atelier-note p,.japanese-ritual-note p{color:var(--muted);line-height:1.7}
.choice-card-new,.service-card-new,.route-map-card-new{border-color:rgba(41,34,28,.28);background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(255,250,243,.42))}
.japanese-ritual-note{margin:22px 0 24px;display:grid;grid-template-columns:1fr .72fr;gap:24px;align-items:center}
.ritual-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ritual-facts span{display:flex;align-items:center;justify-content:center;min-height:54px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.5);font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--deep);text-align:center;padding:9px}
.ritual-policy-note{grid-column:1/-1;margin:0;padding-top:18px;border-top:1px solid var(--line);font-size:14.5px}
.japanese-atelier-note{display:grid;grid-template-columns:.92fr 1.08fr;gap:46px;align-items:center}
.japanese-ritual-note{grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);gap:24px 28px;align-items:start}
.japanese-ritual-figure{margin:0;border-radius:24px;overflow:hidden;background:var(--taupe-soft);position:relative;min-height:100%;box-shadow:var(--shadow-soft)}
.japanese-ritual-figure img{width:100%;height:100%;min-height:280px;object-fit:cover;object-position:center}
.japanese-ritual-figure .image-label{position:absolute;top:16px;left:16px;z-index:2}

@media(max-width:980px){
  .new-ritual-feature,.japanese-ritual-note,.japanese-atelier-note{grid-template-columns:1fr}
  .japanese-ritual-figure img{height:clamp(285px,72vw,430px);min-height:0}
  .new-ritual-feature img{height:clamp(285px,70vw,430px)}
  .new-ritual-copy{padding:4px 8px 10px}
}
@media(max-width:620px){
  .ritual-facts{grid-template-columns:1fr}
  .new-ritual-feature{padding:12px;border-radius:28px}
}


/* V2.9.6 - Services BIAB Title No-Wrap Polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: keeps the full Services page BIAB Natural Look card title on one line on tablet/desktop only. No text, price, duration, booking, schema, image or mobile toggle behavior changed. */
@media(min-width:621px){
  body[data-page="services"] #biab-natural-look h3{
    white-space:nowrap;
    text-wrap:normal;
    font-size:clamp(24px,1.82vw,29px);
    letter-spacing:-.046em;
  }
}
@media(min-width:621px) and (max-width:760px){
  body[data-page="services"] #biab-natural-look h3{
    font-size:23px;
    letter-spacing:-.052em;
  }
}


/* V2.9.7 - restrained atelier edit and clearer service intention cards */
/* V2.9.8 - current review proof and curated Google excerpts */
.home-atelier-edit{padding-block:86px;background:linear-gradient(180deg,rgba(255,250,243,.16),rgba(232,222,211,.13));}
.atelier-edit-panel{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.72fr);gap:34px;align-items:stretch;padding:34px;overflow:hidden;}
.atelier-edit-copy{min-width:0;align-self:center;}
.atelier-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:30px;}
.atelier-edit-card{border:1px solid var(--line);border-radius:24px;padding:22px;background:rgba(255,255,255,.38);}
.atelier-edit-card span{display:block;margin-bottom:11px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;}
.atelier-edit-card h3{font-family:var(--serif);font-size:clamp(23px,2vw,29px);line-height:1.04;letter-spacing:-.03em;margin:0 0 10px;color:var(--deep);}
.atelier-edit-card p{margin:0;color:var(--muted);line-height:1.62;font-size:14.5px;}
.atelier-edit-visual{position:relative;margin:0;border-radius:30px;overflow:hidden;background:var(--taupe-soft);min-height:100%;box-shadow:0 18px 60px rgba(41,34,28,.07);}
.atelier-edit-visual img{width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center;}
body[data-page="services"] .signal-grid-four{grid-template-columns:repeat(4,minmax(0,1fr));}
body[data-page="services"] .signal-grid-four .signal-card{min-width:0;}
@media (max-width:980px){.atelier-edit-panel{grid-template-columns:1fr;}.atelier-edit-visual img{height:clamp(310px,68vw,470px);min-height:0;}body[data-page="services"] .signal-grid-four{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){.home-atelier-edit{padding-block:56px;}.atelier-edit-panel{padding:18px;border-radius:28px;}.atelier-edit-grid{grid-template-columns:1fr;gap:11px;margin-top:22px;}.atelier-edit-card{padding:19px 17px;border-radius:22px;}.atelier-edit-visual img{height:320px;}body[data-page="services"] .signal-grid-four{grid-template-columns:1fr;}}


/* V2.9.15 - Homepage and bridal hero crop polish | Cache marker: v29-35-japanese-mobile-price-visible
   Goal: keep the right-side nail tips fully readable and center the compositions more premium on laptop and phone. */
.hero-card-clean img,.hero-card img{
  object-position:46% 48%;
}
.home-bridal-portrait img,
body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img,
.bridal-direction-showcase .work-card:nth-child(1) img{
  object-position:47% 50%;
}
@media (min-width:1101px){
  .hero-card-clean{width:94%;}
  .hero-card-clean img,.hero-card img{height:624px;object-position:46% 47%;}
  .home-bridal-portrait{width:min(100%,486px);}
  .home-bridal-portrait img{height:572px;object-position:47% 50%;}
  body[data-page="bridal"] .bridal-hero .bridal-image-grid figure:first-child img{height:724px;object-position:47% 50%;}
}
@media (max-width:1100px){
  .hero-card-clean img,.hero-card img{object-position:47% 48%;}
  .home-bridal-portrait img,
  body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{object-position:48% 50%;}
}
@media (max-width:700px){
  .hero-card-clean img,.hero-card img{object-position:48% 48%;}
  .home-bridal-portrait img,
  body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{object-position:49% 50%;}
}


/* V2.9.16 - Woven Frame prototype | Cache marker: v29-35-japanese-mobile-price-visible
   A beige-on-beige signature line language inspired by Persian carpet borders and quiet architectural rhythm.
   Scope: selected existing image frames only. No layout, text, booking, tracking or image-source changes. */
.hero-card-clean,
.home-bridal-portrait,
.home-founder-note .portrait,
body[data-page="atelier"] .founder-note-section .portrait,
body[data-page="bridal"] .bridal-image-grid figure{
  --woven-line:rgba(217,201,186,.32);
  --woven-soft:rgba(255,250,243,.22);
}
.hero-card-clean::before,
.home-bridal-portrait::before,
.home-founder-note .portrait::before,
body[data-page="atelier"] .founder-note-section .portrait::before,
body[data-page="bridal"] .bridal-image-grid figure::before{
  content:"";
  position:absolute;
  inset:18px;
  z-index:3;
  pointer-events:none;
  border-radius:28px;
  opacity:.52;
  box-shadow:inset 0 0 0 1px rgba(255,250,243,.22);
  background:
    linear-gradient(90deg,var(--woven-line) 0 16px,transparent 16px 23px,var(--woven-line) 23px 45px,transparent 45px 52px,var(--woven-line) 52px 76px) left top/88px 1px no-repeat,
    linear-gradient(180deg,var(--woven-line) 0 16px,transparent 16px 23px,var(--woven-line) 23px 45px,transparent 45px 52px,var(--woven-line) 52px 76px) left top/1px 88px no-repeat,
    linear-gradient(270deg,var(--woven-line) 0 16px,transparent 16px 23px,var(--woven-line) 23px 45px,transparent 45px 52px,var(--woven-line) 52px 76px) right top/88px 1px no-repeat,
    linear-gradient(180deg,var(--woven-line) 0 16px,transparent 16px 23px,var(--woven-line) 23px 45px,transparent 45px 52px,var(--woven-line) 52px 76px) right top/1px 88px no-repeat,
    linear-gradient(90deg,var(--woven-line) 0 16px,transparent 16px 23px,var(--woven-line) 23px 45px,transparent 45px 52px,var(--woven-line) 52px 76px) left bottom/88px 1px no-repeat,
    linear-gradient(0deg,var(--woven-line) 0 16px,transparent 16px 23px,var(--woven-line) 23px 45px,transparent 45px 52px,var(--woven-line) 52px 76px) left bottom/1px 88px no-repeat,
    linear-gradient(270deg,var(--woven-line) 0 16px,transparent 16px 23px,var(--woven-line) 23px 45px,transparent 45px 52px,var(--woven-line) 52px 76px) right bottom/88px 1px no-repeat,
    linear-gradient(0deg,var(--woven-line) 0 16px,transparent 16px 23px,var(--woven-line) 23px 45px,transparent 45px 52px,var(--woven-line) 52px 76px) right bottom/1px 88px no-repeat;
}
.hero-card-clean .image-label,
.home-bridal-portrait .image-label,
.home-founder-note .portrait .image-label,
body[data-page="atelier"] .founder-note-section .portrait .image-label,
body[data-page="bridal"] .bridal-image-grid .image-label{
  z-index:5;
}
@media(max-width:700px){
  .hero-card-clean::before,
  .home-bridal-portrait::before,
  .home-founder-note .portrait::before,
  body[data-page="atelier"] .founder-note-section .portrait::before,
  body[data-page="bridal"] .bridal-image-grid figure::before{
    inset:13px;
    border-radius:22px;
    opacity:.44;
    background-size:62px 1px,1px 62px,62px 1px,1px 62px,62px 1px,1px 62px,62px 1px,1px 62px;
  }
}


/* V2.9.17 - Japanese Manicure Ritual title nowrap polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: Services-page title fit only for the Japanese Manicure Ritual card on wider viewports.
   No prices, durations, copy meaning, booking, Planway, schema, tracking or mobile behavior changed. */
@media(min-width:861px){
  #service-menu-shell .service-card-japanese h3,
  #service-menu-shell #japanese-manicure-ritual h3{
    max-width:none;
    white-space:nowrap;
    text-wrap:nowrap;
    letter-spacing:-.03em;
    font-size:clamp(29px,2.4vw,36px);
  }
}
@media(min-width:861px) and (max-width:1180px){
  #service-menu-shell .service-card-japanese h3,
  #service-menu-shell #japanese-manicure-ritual h3{
    font-size:clamp(27px,2.2vw,31px);
  }
}


/* V2.9.18 - Japanese ritual layout polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: Services-page Japanese Manicure editorial block only. Removes large desktop white gap by giving the copy, facts and note a deliberate left-column rhythm while the image spans the full right column.
   No service prices, durations, booking links, Planway behavior, tracking, schema or image assets changed. */
@media(min-width:981px){
  .japanese-ritual-note{
    grid-template-columns:minmax(0,1.02fr) minmax(360px,.88fr);
    gap:18px 30px;
    align-items:start;
  }
  .japanese-ritual-note > :first-child{
    grid-column:1;
    grid-row:1;
    max-width:38rem;
  }
  .japanese-ritual-figure{
    grid-column:2;
    grid-row:1 / span 3;
    align-self:stretch;
    min-height:100%;
  }
  .japanese-ritual-figure img{
    min-height:100%;
  }
  .ritual-facts{
    grid-column:1;
    grid-row:2;
    align-self:start;
    margin-top:4px;
    max-width:42rem;
  }
  .ritual-policy-note{
    grid-column:1;
    grid-row:3;
    align-self:start;
    margin:0;
    padding-top:16px;
    max-width:42rem;
  }
}
@media(max-width:980px){
  .japanese-ritual-note > :first-child,
  .japanese-ritual-figure,
  .ritual-facts,
  .ritual-policy-note{
    grid-column:auto;
    grid-row:auto;
    max-width:none;
  }
}


/* V2.9.19 - Japanese Manicure real visual update | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: Japanese Manicure image treatment using the real after-result photo supplied for the ritual. Current pricing is maintained in page content and structured data. */
.new-ritual-feature img,
.japanese-ritual-figure img{
  object-position:center 55%;
}
@media(min-width:981px){
  .japanese-ritual-figure img{
    min-height:100%;
    object-position:center center;
  }
}


/* V2.9.20 - Japanese ritual editorial refinement, cache-safe image swap, and founder note copy refresh
   Cache marker: v29-35-japanese-mobile-price-visible */
.founder-note-copy{display:grid;gap:14px;max-width:640px}
.founder-note-copy p{margin:0;color:var(--muted);line-height:1.72}
.founder-note-copy .lead{max-width:640px}
.new-ritual-feature{gap:32px;align-items:center;padding:20px}
.new-ritual-feature figure{border-radius:30px}
.new-ritual-feature img{height:360px;object-fit:cover;object-position:center 46%}
.new-ritual-copy{padding:14px 22px 14px 6px;display:flex;flex-direction:column;justify-content:center}
.new-ritual-copy p{max-width:40rem}
.new-ritual-copy .service-meta{margin:18px 0 2px}
.new-ritual-copy .pill,
.ritual-facts span{background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,250,243,.9));border-color:rgba(42,36,30,.09);color:rgba(41,34,28,.82);box-shadow:0 8px 24px rgba(41,34,28,.04)}
@media(min-width:981px){
  .japanese-ritual-note{grid-template-columns:minmax(0,1.02fr) minmax(390px,.84fr);gap:24px 34px;padding:24px 26px}
  .japanese-ritual-note > :first-child{max-width:39rem}
  .japanese-ritual-note h3{margin-bottom:18px}
  .japanese-ritual-note > :first-child p{max-width:38rem;font-size:18px;line-height:1.75}
  .japanese-ritual-figure{border-radius:30px;min-height:100%}
  .japanese-ritual-figure img{min-height:100%;object-position:center 48%}
  .ritual-facts{max-width:40rem;gap:12px;margin-top:8px}
  .ritual-facts span{min-height:58px;padding:10px 14px;font-size:10.5px;letter-spacing:.15em}
}
.ritual-policy-note{margin:2px 0 0;padding:16px 18px;border:1px solid rgba(42,36,30,.08);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,250,243,.74));font-size:14.5px;line-height:1.72;color:rgba(78,70,62,.95)}
@media(max-width:980px){
  .new-ritual-feature{padding:14px;gap:18px}
  .new-ritual-feature img{height:clamp(320px,84vw,470px);object-position:center 42%}
  .new-ritual-copy{padding:4px 8px 10px}
  .japanese-ritual-figure img{height:clamp(330px,88vw,470px);object-position:center 46%}
  .ritual-facts{gap:10px}
  .ritual-facts span{min-height:52px}
  .founder-note-copy{gap:12px}
}


/* V2.9.21 - Nail repair desktop title alignment | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: Services-page repair-card headings only. Keeps the two English nail repair titles on one line on desktop/tablet, while preserving mobile wrapping.
   No prices, descriptions, booking, Planway, schema, tracking, images or service order changed. */
@media(min-width:861px){
  html[lang="en"] #service-menu-shell #nail-repair-within-14-days h3,
  html[lang="en"] #service-menu-shell #nail-repair-after-14-days h3{
    max-width:none;
    white-space:nowrap;
    text-wrap:nowrap;
    font-size:clamp(29px,2.25vw,34px);
    letter-spacing:-.035em;
  }
}
@media(min-width:861px) and (max-width:1120px){
  html[lang="en"] #service-menu-shell #nail-repair-within-14-days h3,
  html[lang="en"] #service-menu-shell #nail-repair-after-14-days h3{
    font-size:clamp(27px,2.1vw,31px);
  }
}


/* V2.9.22 - Japanese mobile editorial polish + woven frame extension | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: homepage Japanese feature block and services-page Japanese editorial block, with a subtle extension of the Woven Frame to those image frames only.
   Goal: improve premium mobile rhythm, image presence and chip/note styling without adding visual noise or changing service meaning. */
.new-ritual-feature figure,
.japanese-ritual-figure{
  --woven-line:rgba(217,201,186,.26);
  --woven-soft:rgba(255,250,243,.16);
}
.new-ritual-feature figure::before,
.japanese-ritual-figure::before{
  content:"";
  position:absolute;
  inset:16px;
  z-index:3;
  pointer-events:none;
  border-radius:24px;
  opacity:.42;
  box-shadow:inset 0 0 0 1px rgba(255,250,243,.18);
  background:
    linear-gradient(90deg,var(--woven-line) 0 14px,transparent 14px 20px,var(--woven-line) 20px 40px,transparent 40px 46px,var(--woven-line) 46px 68px) left top/78px 1px no-repeat,
    linear-gradient(180deg,var(--woven-line) 0 14px,transparent 14px 20px,var(--woven-line) 20px 40px,transparent 40px 46px,var(--woven-line) 46px 68px) left top/1px 78px no-repeat,
    linear-gradient(270deg,var(--woven-line) 0 14px,transparent 14px 20px,var(--woven-line) 20px 40px,transparent 40px 46px,var(--woven-line) 46px 68px) right top/78px 1px no-repeat,
    linear-gradient(180deg,var(--woven-line) 0 14px,transparent 14px 20px,var(--woven-line) 20px 40px,transparent 40px 46px,var(--woven-line) 46px 68px) right top/1px 78px no-repeat,
    linear-gradient(90deg,var(--woven-line) 0 14px,transparent 14px 20px,var(--woven-line) 20px 40px,transparent 40px 46px,var(--woven-line) 46px 68px) left bottom/78px 1px no-repeat,
    linear-gradient(0deg,var(--woven-line) 0 14px,transparent 14px 20px,var(--woven-line) 20px 40px,transparent 40px 46px,var(--woven-line) 46px 68px) left bottom/1px 78px no-repeat,
    linear-gradient(270deg,var(--woven-line) 0 14px,transparent 14px 20px,var(--woven-line) 20px 40px,transparent 40px 46px,var(--woven-line) 46px 68px) right bottom/78px 1px no-repeat,
    linear-gradient(0deg,var(--woven-line) 0 14px,transparent 14px 20px,var(--woven-line) 20px 40px,transparent 40px 46px,var(--woven-line) 46px 68px) right bottom/1px 78px no-repeat;
}
.new-ritual-feature .image-label,
.japanese-ritual-figure .image-label{
  z-index:5;
}
.new-ritual-feature figure,
.japanese-ritual-figure{
  box-shadow:0 18px 54px rgba(41,34,28,.085);
}
.new-ritual-copy,
.japanese-ritual-note > :first-child{
  display:grid;
  align-content:start;
}
.new-ritual-copy .service-meta{
  row-gap:10px;
}
.new-ritual-copy .button-row{
  margin-top:22px;
}
.ritual-facts span{
  justify-content:center;
}
@media(max-width:980px){
  .new-ritual-feature{
    padding:16px;
    gap:16px;
    border-radius:30px;
    background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,250,243,.74));
  }
  .new-ritual-feature figure,
  .japanese-ritual-figure{
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 20px 58px rgba(41,34,28,.09);
  }
  .new-ritual-feature figure::before,
  .japanese-ritual-figure::before{
    inset:12px;
    border-radius:22px;
    opacity:.38;
    background-size:62px 1px,1px 62px,62px 1px,1px 62px,62px 1px,1px 62px,62px 1px,1px 62px;
  }
  .new-ritual-feature img{
    height:clamp(360px,96vw,520px);
    object-position:center 44%;
  }
  .new-ritual-copy{
    padding:2px 4px 4px;
    gap:10px;
  }
  .new-ritual-copy .eyebrow{
    margin-bottom:2px;
  }
  .new-ritual-copy h3{
    font-size:clamp(40px,10.6vw,58px);
    line-height:.96;
    margin:0;
  }
  .new-ritual-copy p{
    margin:0;
    font-size:17px;
    line-height:1.72;
  }
  .new-ritual-copy .service-meta{
    margin:6px 0 0;
    gap:10px;
  }
  .new-ritual-copy .pill,
  .ritual-facts span{
    min-height:54px;
    padding:10px 13px;
    font-size:10px;
    letter-spacing:.15em;
  }
  .new-ritual-copy .button-row{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-top:12px;
  }
  .new-ritual-copy .button-row .btn{
    width:100%;
    min-height:52px;
  }
  .japanese-ritual-note{
    padding:18px 16px 16px;
    gap:16px;
    border-radius:30px;
    background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,250,243,.74));
  }
  .japanese-ritual-note > :first-child{
    gap:10px;
  }
  .japanese-ritual-note h3{
    font-size:clamp(40px,11vw,58px);
    line-height:.96;
    margin:0;
  }
  .japanese-ritual-note > :first-child p{
    margin:0;
    font-size:17px;
    line-height:1.72;
  }
  .japanese-ritual-figure img{
    height:clamp(360px,96vw,520px);
    object-position:center 44%;
  }
  .ritual-facts{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin:0;
  }
  .ritual-policy-note{
    margin:2px 0 0;
    padding:16px 16px 17px;
    border-radius:18px;
    line-height:1.74;
    background:linear-gradient(180deg,rgba(255,255,255,.38),rgba(255,250,243,.78));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
  }
}


/* V2.9.23 - Japanese crop polish + founder note punctuation cleanup | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: refine the Japanese feature image crop sitewide and remove the homepage founder-note em dash in the short brand line. */
.new-ritual-feature img{
  object-position:center 31%;
}
.japanese-ritual-figure img{
  object-position:center 34%;
}
@media(max-width:980px){
  .new-ritual-feature img{
    object-position:center 28%;
  }
  .japanese-ritual-figure img{
    object-position:center 31%;
  }
}


/* V2.9.24 - deploy verification marker | Cache marker: v29-35-japanese-mobile-price-visible | MNA2924_DEPLOY_VERIFY_OK */


/* V2.9.25 - Proof, booking visibility and local SEO polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: homepage proof/process section, mobile booking CTA visibility and natural local SEO copy around Japanese Manicure, Valby and Copenhagen.
   No prices, Planway flow, tracking or schema service prices changed. */
.proof-process-section{padding-top:98px}
.proof-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 0 28px}
.proof-process-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.42);box-shadow:0 8px 34px rgba(41,34,28,.035);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.proof-process-card:hover{transform:translateY(-3px);border-color:rgba(22,19,17,.2);box-shadow:0 22px 56px rgba(41,34,28,.08)}
.proof-process-card figure{position:relative;margin:0;overflow:hidden;background:var(--taupe-soft)}
.proof-process-card figure::after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.38);border-radius:20px;pointer-events:none}
.proof-process-card img{width:100%;height:330px;object-fit:cover;object-position:center}
.proof-process-card:first-child img{object-position:center 31%}
.proof-process-card:nth-child(2) img{object-position:center 48%}
.proof-process-card:nth-child(3) img{object-position:center 50%}
.proof-process-card div{padding:24px 24px 26px}
.proof-process-card span{display:inline-flex;margin-bottom:12px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:rgba(78,70,62,.78)}
.proof-process-card h3{font-family:var(--serif);font-size:clamp(26px,2.5vw,34px);line-height:1.02;letter-spacing:-.035em;margin:0 0 12px;color:#202020}
.proof-process-card p{margin:0;color:var(--muted);line-height:1.72}
.mobile-sticky-booking{display:none}
@media(max-width:980px){
  .proof-process-grid{grid-template-columns:1fr;gap:16px}
  .proof-process-card img{height:clamp(310px,78vw,440px)}
  .proof-process-card div{padding:22px 20px 24px}
}
@media(max-width:760px){
  body:has(.mobile-sticky-booking){padding-bottom:96px}
  .mobile-sticky-booking{display:block;position:fixed;left:14px;right:14px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:240;pointer-events:none}
  .mobile-sticky-booking a{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px 13px 18px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(41,36,31,.94);color:#fff;box-shadow:0 20px 48px rgba(30,24,20,.26);backdrop-filter:blur(18px)}
  .mobile-sticky-booking span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:850}
  .mobile-sticky-booking small{font-size:11px;letter-spacing:.06em;color:rgba(255,250,243,.72);white-space:nowrap}
}
@media(max-width:380px){.mobile-sticky-booking small{display:none}.mobile-sticky-booking a{justify-content:center}}


/* V2.9.26 - Premium proof-section wording polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: visible homepage proof-section wording only. Keeps local SEO naturally in the lead/alt text while removing keyword-heavy visible card titles. */
.proof-process-section .grid-head .lead{max-width:720px}
.proof-process-card h3{max-width:13.5em}
.proof-process-card p{font-size:15.5px}
@media(max-width:700px){
  .proof-process-card h3{max-width:11em}
  .proof-process-section .button-row{display:grid;grid-template-columns:1fr;gap:10px}
  .proof-process-section .button-row .btn{width:100%}
}


/* V2.9.27 - Danish local SEO and mobile booking polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: natural local-search guidance sections, services-page local decision support, and a softer premium mobile booking capsule. */
.local-intent-section,
.service-local-guide-section{
  border-top:1px solid rgba(42,36,30,.07);
}
.local-intent-panel,
.service-local-guide{
  background:linear-gradient(180deg,rgba(255,255,255,.44),rgba(255,250,243,.68));
  box-shadow:0 18px 60px rgba(41,34,28,.055);
}
.local-intent-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:26px;
}
.local-intent-grid-four{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.local-intent-card{
  border:1px solid rgba(42,36,30,.10);
  border-radius:24px;
  padding:22px;
  background:rgba(255,255,255,.38);
  box-shadow:0 10px 34px rgba(41,34,28,.035);
}
.local-intent-card span{
  display:inline-flex;
  margin-bottom:14px;
  font-size:10px;
  letter-spacing:.15em;
  text-transform:uppercase;
  font-weight:850;
  color:rgba(78,70,62,.82);
}
.local-intent-card h3{
  font-family:var(--serif);
  font-size:clamp(26px,2.3vw,34px);
  letter-spacing:-.035em;
  line-height:1.02;
  margin:0 0 12px;
  color:#202020;
}
.local-intent-card p{
  color:var(--muted);
  line-height:1.72;
  margin:0;
}
.local-intent-card a{
  display:inline-flex;
  margin-top:18px;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:850;
  color:var(--deep);
  border-bottom:1px solid rgba(41,34,28,.32);
  padding-bottom:4px;
}
@media(max-width:1100px){
  .local-intent-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .local-intent-grid,
  .local-intent-grid-four{
    grid-template-columns:1fr;
    gap:12px;
    margin-top:18px;
  }
  .local-intent-card{
    padding:20px;
    border-radius:22px;
  }
  .local-intent-card h3{
    font-size:clamp(30px,8.4vw,40px);
  }
  .local-intent-panel .button-row,
  .service-local-guide .button-row{
    display:grid;
    grid-template-columns:1fr;
  }
}
@media(max-width:700px){
  .mobile-sticky-booking a{
    border-color:rgba(42,36,30,.16);
    background:rgba(255,250,243,.94);
    color:var(--deep);
    box-shadow:0 18px 42px rgba(41,34,28,.16);
  }
  .mobile-sticky-booking small{
    color:rgba(78,70,62,.76);
  }
}


/* V2.9.28 - Japanese homepage feature mobile balance fix | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: homepage Japanese Manicure feature card on phone only. Makes the section calmer and more premium by reducing oversized title/chips, tightening vertical rhythm and improving the image crop. */
@media(max-width:760px){
  .new-ritual-feature{
    padding:12px;
    gap:13px;
    border-radius:28px;
  }
  .new-ritual-feature figure{
    border-radius:24px;
  }
  .new-ritual-feature figure::before{
    inset:10px;
    border-radius:19px;
    opacity:.34;
    background-size:54px 1px,1px 54px,54px 1px,1px 54px,54px 1px,1px 54px,54px 1px,1px 54px;
  }
  .new-ritual-feature img{
    height:clamp(250px,64vw,330px);
    object-position:center 30%;
  }
  .new-ritual-copy{
    padding:4px 4px 8px;
    gap:9px;
  }
  .new-ritual-copy .eyebrow{
    font-size:12px;
    letter-spacing:.17em;
    margin:0 0 2px;
  }
  .new-ritual-copy h3{
    font-size:clamp(35px,9.35vw,44px);
    line-height:.98;
    letter-spacing:-.045em;
    margin:0;
    max-width:9.5em;
  }
  .new-ritual-copy p{
    font-size:16px;
    line-height:1.62;
    max-width:31rem;
  }
  .new-ritual-copy .service-meta{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    margin:4px 0 0;
  }
  .new-ritual-copy .pill{
    min-height:42px;
    justify-content:center;
    padding:8px 8px;
    font-size:9.2px;
    letter-spacing:.14em;
    text-align:center;
    line-height:1.15;
    white-space:nowrap;
  }
  .new-ritual-copy .button-row{
    gap:9px;
    margin-top:8px;
  }
  .new-ritual-copy .button-row .btn{
    min-height:48px;
    padding:13px 18px;
    font-size:11px;
    letter-spacing:.13em;
  }
}
@media(max-width:370px){
  .new-ritual-copy h3{
    font-size:clamp(32px,9vw,38px);
  }
  .new-ritual-copy p{
    font-size:15.5px;
  }
  .new-ritual-copy .pill{
    font-size:8.8px;
    letter-spacing:.12em;
  }
}


/* V2.9.30 - Laptop proof and service proof polish | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: desktop/laptop proof sections and services-page image proof blocks only. Removes cropped divider artifacts and makes proof moments calmer, tighter and more editorial.
   No service prices, booking links, Planway flow, tracking, schema service prices or image sources changed. */
body[data-page="services"] .category-title::after,
body[data-page="services"] .service-group + .service-group::before{
  display:none!important;
}
body[data-page="services"] .category-title{
  display:block;
  max-width:980px;
}
.proof-process-section{
  padding-top:122px;
}
.proof-process-section .grid-head{
  align-items:start;
  margin-bottom:46px;
}
.proof-process-section .big-title{
  max-width:720px;
}
.proof-process-section .grid-head .lead{
  max-width:620px;
  font-size:17px;
  line-height:1.74;
}
.proof-process-grid{
  gap:18px;
}
.proof-process-card{
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.48),rgba(255,250,243,.66));
  box-shadow:0 16px 48px rgba(41,34,28,.055);
}
.proof-process-card img{
  height:305px;
}
.proof-process-card div{
  padding:24px 24px 28px;
}
.proof-process-card h3{
  font-size:clamp(27px,2.15vw,34px);
  max-width:none;
}
body[data-page="services"] .service-group + .service-group{
  border-top:0;
  margin-top:78px;
  padding-top:0;
}
body[data-page="services"] .service-photo-break{
  margin:28px 0 34px;
  padding:22px;
  grid-template-columns:minmax(360px,.72fr) minmax(360px,.82fr);
  gap:34px;
  align-items:center;
  border-radius:34px;
  background:linear-gradient(180deg,rgba(255,255,255,.44),rgba(255,250,243,.62));
  box-shadow:0 18px 56px rgba(41,34,28,.055);
}
body[data-page="services"] .service-photo-break figure{
  border-radius:25px;
  box-shadow:0 14px 38px rgba(41,34,28,.055);
}
body[data-page="services"] .service-photo-break figure::after{
  content:"";
  position:absolute;
  inset:13px;
  border:1px solid rgba(255,255,255,.36);
  border-radius:20px;
  pointer-events:none;
}
body[data-page="services"] .service-photo-break img{
  height:345px;
}
body[data-page="services"] .service-photo-copy{
  max-width:560px;
  padding:8px 22px 8px 0;
}
body[data-page="services"] .service-photo-copy .eyebrow{
  margin-bottom:18px;
}
body[data-page="services"] .service-photo-copy h3{
  font-size:clamp(36px,3.15vw,50px);
  line-height:1;
  margin-bottom:16px;
  max-width:650px;
}
body[data-page="services"] .service-photo-copy p{
  font-size:17px;
  line-height:1.66;
  max-width:560px;
}
@media(max-width:980px){
  .proof-process-section{
    padding-top:86px;
  }
  .proof-process-section .grid-head{
    margin-bottom:30px;
  }
  .proof-process-card img{
    height:clamp(280px,68vw,410px);
  }
  body[data-page="services"] .service-group + .service-group{
    margin-top:46px;
  }
  body[data-page="services"] .service-photo-break{
    grid-template-columns:1fr;
    gap:18px;
    padding:16px;
    margin:22px 0 28px;
  }
  body[data-page="services"] .service-photo-break img{
    height:clamp(300px,72vw,430px);
  }
  body[data-page="services"] .service-photo-copy{
    max-width:none;
    padding:4px 8px 10px;
  }
  body[data-page="services"] .service-photo-copy h3{
    font-size:clamp(34px,8.8vw,46px);
  }
}
@media(max-width:620px){
  .proof-process-section{
    padding-top:72px;
  }
  .proof-process-card{
    border-radius:26px;
  }
  .proof-process-card img{
    height:clamp(260px,70vw,360px);
  }
  body[data-page="services"] .service-photo-break{
    border-radius:26px;
  }
  body[data-page="services"] .service-photo-break figure{
    border-radius:21px;
  }
  body[data-page="services"] .service-photo-copy h3{
    font-size:clamp(32px,8.4vw,42px);
  }
}


/* V2.9.31 - Editorial image crop system | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: proof/gallery feature imagery on homepage and services proof blocks. Uses art-directed wide crops so nails are not clipped on laptop while keeping mobile calm and premium.
   No service prices, booking links, Planway flow, schema prices or tracking changed. */
.proof-process-card img,
body[data-page="services"] .service-photo-break img{
  object-position:center center;
}
@media(min-width:981px){
  .proof-process-card figure,
  body[data-page="services"] .service-photo-break figure{
    background:linear-gradient(135deg,rgba(244,236,226,.92),rgba(255,250,243,.96));
  }
  .proof-process-card img{
    height:318px;
  }
  body[data-page="services"] .service-photo-break img{
    height:360px;
  }
  body[data-page="services"] .service-photo-break{
    grid-template-columns:minmax(420px,.78fr) minmax(360px,.82fr);
  }
}
@media(max-width:980px){
  .proof-process-card img,
  body[data-page="services"] .service-photo-break img{
    object-position:center center;
  }
}


/* V2.9.32 - Full-bleed image art direction restore | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: homepage proof cards and services-page proof blocks only. Removes the blurred/inset wide-crop look from V2.9.31 and returns to full-bleed editorial nail photography with per-image focal control on laptop and mobile.
   No service prices, booking links, Planway flow, tracking or schema prices changed. */
.proof-process-card figure,
body[data-page="services"] .service-photo-break figure{
  background:var(--taupe-soft);
}
.proof-process-card img,
body[data-page="services"] .service-photo-break img{
  object-fit:cover;
  filter:none;
  transform:none;
}
.proof-process-card:first-child img{object-position:center 35%;}
.proof-process-card:nth-child(2) img{object-position:center 48%;}
.proof-process-card:nth-child(3) img{object-position:center 42%;}
body[data-page="services"] .service-photo-break img[src*="gallery-pink-glazed-round"]{object-position:center 44%;}
body[data-page="services"] .service-photo-break img[src*="japanese-manicure-natural-shine"]{object-position:center 35%;}
body[data-page="services"] .service-photo-break img[src*="gallery-soft-clean-ombre"]{object-position:center 48%;}
body[data-page="services"] .service-photo-break img[src*="gallery-clean-french-pedicure"]{object-position:center 48%;}
body[data-page="services"] .service-photo-break img[src*="gallery-ceramic-pearl-almond"]{object-position:center 45%;}
@media(min-width:981px){
  .proof-process-card img{height:318px;}
  body[data-page="services"] .service-photo-break img{height:360px;}
}
@media(max-width:980px){
  .proof-process-card:first-child img{object-position:center 34%;}
  .proof-process-card:nth-child(2) img{object-position:center 50%;}
  .proof-process-card:nth-child(3) img{object-position:center 45%;}
  body[data-page="services"] .service-photo-break img[src*="gallery-pink-glazed-round"]{object-position:center 45%;}
  body[data-page="services"] .service-photo-break img[src*="japanese-manicure-natural-shine"]{object-position:center 34%;}
  body[data-page="services"] .service-photo-break img[src*="gallery-soft-clean-ombre"]{object-position:center 50%;}
  body[data-page="services"] .service-photo-break img[src*="gallery-clean-french-pedicure"]{object-position:center 48%;}
  body[data-page="services"] .service-photo-break img[src*="gallery-ceramic-pearl-almond"]{object-position:center 47%;}
}


/* V2.9.35 - Japanese Manicure mobile price visibility | Cache marker: v29-35-japanese-mobile-price-visible
   Scope: Services-page Japanese Manicure card on small mobile screens only. Keeps the price visible beside New and 60 min, while hiding the fourth descriptor chip to preserve the compact premium rhythm.
   No price value, booking flow, Planway behavior, schema, tracking, images or service copy changed. */
@media(max-width:620px){
  body[data-page="services"] .service-card-japanese .service-meta .pill:nth-child(3){
    display:inline-flex;
  }
  body[data-page="services"] .service-card-japanese .service-meta .pill:nth-child(n+4){
    display:none;
  }
}


/* MNA2946 - Danish Services mid-width overflow correction | Cache marker: v29-46-final-review-audit
   Keeps the desktop no-wrap repair-title treatment limited to English, allowing natural Danish wrapping at laptop widths. */

/* MNA2958 - Mobile conversion backtest polish
   Scope: mobile-only touch targets, intelligent booking capsule visibility, and tighter rhythm for the newly approved Why private, booking guidance and Pedicure Valby sections.
   No prices, service meaning, Planway routes, tracking, schema, reviews, images or influencer campaigns changed. */
@media(max-width:760px){
  .brand,
  .mobile-header-book,
  .mobile-menu{min-height:44px;}

  body[data-page="services"] .service-jump-nav{
    scroll-snap-type:x proximity;
    overscroll-behavior-inline:contain;
  }
  body[data-page="services"] .service-jump-nav a{
    min-height:44px;
    padding:10px 12px;
    scroll-snap-align:start;
  }

  .mobile-sticky-booking{
    opacity:0;
    visibility:hidden;
    transform:translate3d(0,calc(100% + 24px),0);
    transition:opacity .2s ease,transform .26s cubic-bezier(.22,.75,.25,1),visibility .2s linear;
    will-change:transform,opacity;
  }
  .mobile-sticky-booking.is-visible{
    opacity:1;
    visibility:visible;
    transform:translate3d(0,0,0);
  }
  .mobile-sticky-booking[aria-hidden="true"]{
    pointer-events:none;
  }
  .mobile-sticky-booking a{
    min-height:52px;
  }
}

@media(max-width:430px){
  body[data-page="home"] .home-why-private .local-intent-panel,
  body[data-page="services"] .service-booking-decision .service-local-guide{
    padding:22px 20px 24px;
    border-radius:28px;
  }
  body[data-page="home"] .home-why-private .grid-head,
  body[data-page="services"] .service-booking-decision .grid-head{
    gap:18px;
    margin-bottom:24px;
  }
  body[data-page="home"] .home-why-private .big-title,
  body[data-page="services"] .service-booking-decision .big-title{
    font-size:clamp(36px,10.25vw,46px);
    line-height:1;
  }
  body[data-page="home"] .home-why-private .lead,
  body[data-page="services"] .service-booking-decision .lead{
    font-size:14.8px;
    line-height:1.58;
  }
  body[data-page="home"] .home-why-private .local-intent-grid,
  body[data-page="services"] .service-booking-decision .local-intent-grid{
    gap:10px;
    margin-top:18px;
  }
  body[data-page="home"] .home-why-private .local-intent-card,
  body[data-page="services"] .service-booking-decision .local-intent-card{
    padding:18px;
    border-radius:21px;
  }
  body[data-page="home"] .home-why-private .local-intent-card h3,
  body[data-page="services"] .service-booking-decision .local-intent-card h3{
    font-size:clamp(27px,7.6vw,34px);
    line-height:1.02;
    margin-bottom:10px;
  }
  body[data-page="home"] .home-why-private .local-intent-card p,
  body[data-page="services"] .service-booking-decision .local-intent-card p{
    font-size:14.7px;
    line-height:1.58;
  }
  body[data-page="services"] .service-booking-decision .button-row{
    gap:10px;
    margin-top:20px;
  }
  body[data-page="services"] .service-booking-decision .btn{
    min-height:48px;
    padding:13px 16px;
  }

  body.pedicure-page #vaelg-pedicure .service-grid{
    gap:12px;
  }
  body.pedicure-page #vaelg-pedicure .service-card{
    padding:22px 20px;
    border-radius:24px;
  }
  body.pedicure-page #vaelg-pedicure .service-card h3{
    margin-bottom:8px;
  }
  body.pedicure-page #vaelg-pedicure .service-card p{
    line-height:1.58;
  }
  body.pedicure-page #vaelg-pedicure .best{
    margin-top:14px;
    padding-top:14px;
    line-height:1.55;
  }
}

@media(prefers-reduced-motion:reduce){
  .mobile-sticky-booking{
    transition:none;
  }
}



/* MNA2960 - Privacy-first booking clarity and mobile accessibility
   Scope: consistent Book CTAs, clearer treatment decision path, 44px key mobile controls, stronger keyboard focus, and safe duplicate-rule cleanup.
   Advertising and analytics storage remain denied; no consent banner or analytics cookies are added. */
.footer-dark-links a{min-height:44px;}
.lang:focus-visible,
.navlinks a:focus-visible,
.nav-more summary:focus-visible,
.mobile-menu-language-top a:focus-visible,
.mobile-lang-link:focus-visible,
.choice-card:focus-visible,
.local-intent-card a:focus-visible{
  outline:2px solid rgba(41,34,28,.78);
  outline-offset:4px;
  border-radius:10px;
}
@media(max-width:760px){
  .mobile-header-book,
  .mobile-menu,
  .mobile-close,
  .mobile-menu-language-top a,
  .mobile-lang-link{min-width:44px;min-height:44px;}
  .mobile-close{width:44px;height:44px;}
  .mobile-menu-language-top a,
  .mobile-lang-link{display:inline-flex;align-items:center;justify-content:center;padding-inline:12px;}
}

/* MNA2961 - Scroll architecture, service-category disclosure and card alignment
   Scope: shorter homepage, progressive disclosure for the long Services menu,
   mobile preview rails, consistent duration visibility and bottom-aligned card actions.
   Privacy remains Option A: storage denied, no analytics cookies and no consent banner. */

/* Make all decision cards finish on one disciplined baseline. */
.service-choice-card,
.service-booking-decision .local-intent-card,
.service-local-guide-section .local-intent-card,
body.pedicure-page .local-intent-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
.service-choice-card strong,
.service-booking-decision .local-intent-card > a,
.service-local-guide-section .local-intent-card > a,
body.pedicure-page .local-intent-card > a{
  margin-top:auto;
}

/* Long service menu: native-button accordion architecture with full no-JS fallback. */
#service-menu-shell .service-group-accordion{
  margin-top:16px;
  scroll-margin-top:116px;
}
#service-menu-shell .service-group-heading{
  margin:0;
}
#service-menu-shell .service-group-toggle{
  width:100%;
  min-height:86px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 34px;
  align-items:center;
  gap:18px;
  padding:20px 24px;
  border:1px solid rgba(42,36,30,.12);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(255,250,243,.40));
  color:var(--deep);
  text-align:left;
  cursor:pointer;
  box-shadow:0 10px 34px rgba(41,34,28,.035);
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease;
}
#service-menu-shell .service-group-toggle:hover{
  transform:translateY(-1px);
  border-color:rgba(42,36,30,.22);
  box-shadow:0 18px 46px rgba(41,34,28,.07);
}
#service-menu-shell .service-group-toggle:focus-visible{
  outline:2px solid rgba(41,34,28,.76);
  outline-offset:4px;
}
#service-menu-shell .service-group-toggle-title{
  font-family:var(--serif);
  font-size:clamp(30px,3vw,43px);
  line-height:1;
  letter-spacing:-.035em;
  text-wrap:balance;
}
#service-menu-shell .service-group-toggle-meta{
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
  white-space:nowrap;
}
#service-menu-shell .service-group-toggle-icon{
  position:relative;
  width:30px;
  height:30px;
  border:1px solid rgba(42,36,30,.15);
  border-radius:999px;
  background:rgba(255,255,255,.46);
}
#service-menu-shell .service-group-toggle-icon::before,
#service-menu-shell .service-group-toggle-icon::after{
  content:"";
  position:absolute;
  left:8px;
  right:8px;
  top:14px;
  height:1px;
  background:var(--deep);
  transition:transform .2s ease;
}
#service-menu-shell .service-group-toggle-icon::after{
  transform:rotate(90deg);
}
#service-menu-shell .service-group-toggle[aria-expanded="true"] .service-group-toggle-icon::after{
  transform:rotate(0deg);
}
#service-menu-shell .service-group-panel{
  padding:18px 0 10px;
}
html.mna-service-groups-ready #service-menu-shell .service-group-accordion:not(.is-open) .service-group-panel{
  display:none;
}
#service-menu-shell .service-group-accordion.is-open .service-group-toggle{
  border-color:rgba(42,36,30,.24);
  background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(232,222,211,.24));
}

/* The homepage was previously fourteen major sections. The retained nine-section path
   keeps the premium narrative while removing repeated previews already available on
   Work, Standards and Guides routes. This spacing makes the laptop version editorial,
   not dispersed. */
body[data-page="home"] .hero{
  min-height:680px;
  padding-top:92px;
  padding-bottom:84px;
}
body[data-page="home"] .section{
  padding-top:84px;
  padding-bottom:84px;
}
body[data-page="home"] .section-tight{
  padding-top:62px;
  padding-bottom:62px;
}
body[data-page="home"] .grid-head{
  margin-bottom:40px;
}

/* Pedicure cards use the same bottom rhythm as the main service cards. */
body.pedicure-page #choose-pedicure .service-card,
body.pedicure-page #vaelg-pedicure .service-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
body.pedicure-page #choose-pedicure .service-card .best,
body.pedicure-page #vaelg-pedicure .service-card .best{
  margin-top:auto;
}

@media(max-width:760px){
  /* Compact vertical rhythm without shrinking readable type or touch targets. */
  body[data-page="home"] .hero{
    min-height:0;
    padding-top:52px;
    padding-bottom:48px;
  }
  body[data-page="home"] .section{
    padding-top:52px;
    padding-bottom:52px;
  }
  body[data-page="home"] .section-tight{
    padding-top:44px;
    padding-bottom:44px;
  }
  body[data-page="home"] .grid-head{
    gap:18px;
    margin-bottom:26px;
  }

  #service-menu-shell .service-group-accordion{
    margin-top:10px;
    scroll-margin-top:92px;
  }
  #service-menu-shell .service-group-toggle{
    min-height:72px;
    grid-template-columns:minmax(0,1fr) 28px;
    gap:12px;
    padding:16px 17px;
    border-radius:20px;
  }
  #service-menu-shell .service-group-toggle-title{
    font-size:clamp(27px,8vw,34px);
  }
  #service-menu-shell .service-group-toggle-meta{
    grid-column:1;
    margin-top:3px;
    font-size:9px;
  }
  #service-menu-shell .service-group-toggle-icon{
    grid-column:2;
    grid-row:1 / span 2;
    width:28px;
    height:28px;
  }
  #service-menu-shell .service-group-toggle-icon::before,
  #service-menu-shell .service-group-toggle-icon::after{
    left:7px;
    right:7px;
    top:13px;
  }
  #service-menu-shell .service-group-panel{
    padding-top:12px;
  }

  /* Mobile rails: preview collections remain fully available, but no longer create
     several screens of repetitive vertical cards. The partial next card signals swipe. */
  body[data-page="home"] .home-why-private .local-intent-grid,
  body[data-page="home"] .home-service-preview .service-grid-four,
  body[data-page="home"] .home-work-preview .portfolio-grid,
  body[data-page="home"] .home-reviews-preview .review-page-grid,
  body[data-page="services"] .services-choice-panel .service-choice-matrix,
  body[data-page="services"] .service-booking-decision .local-intent-grid,
  body[data-page="services"] .service-local-guide-section .local-intent-grid,
  body.pedicure-page #choose-pedicure .service-grid,
  body.pedicure-page #vaelg-pedicure .service-grid,
  body.pedicure-page .service-local-guide .local-intent-grid,
  body.pedicure-page .step-grid{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:min(82vw,320px);
    align-items:stretch;
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:2px;
    padding:2px 2px 12px;
    scrollbar-width:thin;
    scrollbar-color:rgba(42,36,30,.22) transparent;
  }
  body[data-page="home"] .home-why-private .local-intent-grid > *,
  body[data-page="home"] .home-service-preview .service-grid-four > *,
  body[data-page="home"] .home-work-preview .portfolio-grid > *,
  body[data-page="home"] .home-reviews-preview .review-page-grid > *,
  body[data-page="services"] .services-choice-panel .service-choice-matrix > *,
  body[data-page="services"] .service-booking-decision .local-intent-grid > *,
  body[data-page="services"] .service-local-guide-section .local-intent-grid > *,
  body.pedicure-page #choose-pedicure .service-grid > *,
  body.pedicure-page #vaelg-pedicure .service-grid > *,
  body.pedicure-page .service-local-guide .local-intent-grid > *,
  body.pedicure-page .step-grid > *{
    scroll-snap-align:start;
    min-width:0;
    height:100%;
  }

  /* Only the currently opened treatment category occupies vertical space. Its cards
     form a swipeable comparison row on phones, with duration, price and first detail
     always visible. */
  body[data-page="services"]:not(.pedicure-page) #service-menu-shell .service-grid{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:min(84vw,330px);
    align-items:stretch;
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    padding:2px 2px 12px;
    scrollbar-width:thin;
    scrollbar-color:rgba(42,36,30,.22) transparent;
  }
  body[data-page="services"]:not(.pedicure-page) #service-menu-shell .service-card{
    scroll-snap-align:start;
    display:flex;
    flex-direction:column;
    height:100%;
    min-height:336px;
  }
  body[data-page="services"]:not(.pedicure-page) #service-menu-shell .service-details-toggle{
    margin-top:auto;
  }

  body.pedicure-page #choose-pedicure .service-card,
  body.pedicure-page #vaelg-pedicure .service-card{
    min-height:330px;
  }

  /* Keep swipe rails visually quiet while signalling that more follows. */
  body[data-page="home"] .home-service-preview .service-grid-four::after,
  body[data-page="services"] .services-choice-panel .service-choice-matrix::after{
    content:"";
    width:1px;
  }
}

@media(max-width:390px){
  body[data-page="home"] .home-why-private .local-intent-grid,
  body[data-page="home"] .home-service-preview .service-grid-four,
  body[data-page="home"] .home-work-preview .portfolio-grid,
  body[data-page="home"] .home-reviews-preview .review-page-grid,
  body[data-page="services"] .services-choice-panel .service-choice-matrix,
  body[data-page="services"] .service-booking-decision .local-intent-grid,
  body[data-page="services"] .service-local-guide-section .local-intent-grid,
  body.pedicure-page #choose-pedicure .service-grid,
  body.pedicure-page #vaelg-pedicure .service-grid,
  body.pedicure-page .service-local-guide .local-intent-grid,
  body.pedicure-page .step-grid,
  body[data-page="services"]:not(.pedicure-page) #service-menu-shell .service-grid{
    grid-auto-columns:min(86vw,310px);
  }
}

/* MNA2961 - Purpose-page mobile pacing
   Portfolio and bridal pages keep their complete content, but use editorial swipe
   collections on phones instead of turning every preview into another full screen. */
@media(max-width:760px){
  body[data-page="work"] .section,
  body[data-page="bridal"] .section{
    padding-top:52px;
    padding-bottom:52px;
  }
  body[data-page="work"] .section-tight,
  body[data-page="bridal"] .section-tight{
    padding-top:44px;
    padding-bottom:44px;
  }

  body[data-page="work"] .portfolio-grid-final{
    display:grid;
    grid-template-columns:none;
    grid-template-rows:repeat(2,auto);
    grid-auto-flow:column;
    grid-auto-columns:min(76vw,296px);
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    padding:2px 2px 12px;
    scrollbar-width:thin;
    scrollbar-color:rgba(42,36,30,.22) transparent;
  }
  body[data-page="work"] .portfolio-grid-final .work-card{
    scroll-snap-align:start;
    height:100%;
  }
  body[data-page="work"] .portfolio-grid-final .work-card img{
    height:220px;
  }
  body[data-page="work"] .portfolio-grid-final .work-body{
    padding:17px;
  }
  body[data-page="work"] .portfolio-grid-final .work-body h3{
    font-size:clamp(23px,6.7vw,28px);
    margin-bottom:8px;
  }
  body[data-page="work"] .portfolio-grid-final .work-body p{
    font-size:13.8px;
    line-height:1.48;
  }

  body[data-page="bridal"] .bridal-image-grid,
  body[data-page="bridal"] .bridal-direction-grid,
  body[data-page="bridal"] .wedding-signal-grid{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:min(84vw,330px);
    align-items:stretch;
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    padding:2px 2px 12px;
    scrollbar-width:thin;
    scrollbar-color:rgba(42,36,30,.22) transparent;
  }
  body[data-page="bridal"] .bridal-image-grid > *,
  body[data-page="bridal"] .bridal-direction-grid > *,
  body[data-page="bridal"] .wedding-signal-grid > *{
    scroll-snap-align:start;
    min-width:0;
    height:100%;
  }
  body[data-page="bridal"] .bridal-image-grid img{
    height:430px;
    object-fit:cover;
  }
  body[data-page="bridal"] .bridal-direction-grid .work-card img{
    height:280px;
  }
}
@media(max-width:760px){
  body[data-page="services"] .services-choice-panel .service-choice-matrix,
  body[data-page="services"] .service-booking-decision .local-intent-grid,
  body[data-page="services"] .service-local-guide-section .local-intent-grid{
    grid-auto-columns:min(74vw,288px);
  }
}
@media(max-width:760px){
  body[data-page="services"] .service-signal-panel .signal-grid{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:min(74vw,288px);
    align-items:stretch;
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    padding:2px 2px 12px;
    scrollbar-width:thin;
    scrollbar-color:rgba(42,36,30,.22) transparent;
  }
  body[data-page="services"] .service-signal-panel .signal-grid > *{
    scroll-snap-align:start;
    min-width:0;
    height:100%;
  }
}

/* MNA2962 - Whole-site card baseline and review-author alignment
   Scope: aligns card actions, guidance blocks and review authors across all card grids
   on laptop, tablet and phone. No content, price, duration, service, booking, privacy,
   tracking, SEO or influencer-campaign data is changed. */
.service-grid > .service-card,
.local-intent-grid > .local-intent-card,
.review-grid > .review,
.review-page-grid > .review,
.guide-grid > .guide-card,
.signal-grid > .signal-card,
.principle-grid > .principle-card,
.bridal-card-grid > .bridal-card,
.wedding-signal-grid > .wedding-signal{
  display:flex;
  flex-direction:column;
  height:100%;
}

/* Keep the practical decision or proof line on one calm baseline. */
.service-grid > .service-card > .best,
.local-intent-card > a,
.review .author{
  margin-top:auto;
}

/* Preserve the original review breathing room while bottom-aligning names. */
.review .author{
  padding-top:22px;
}

/* The Services and Pedicure guidance links remain aligned even when copy lengths differ. */
.service-booking-decision .local-intent-card > a,
.service-local-guide-section .local-intent-card > a,
body.pedicure-page .local-intent-card > a{
  margin-top:auto;
}

/* MNA2963 - Services quick-choice desktop composition and metadata fit
   Scope: balances the eight quick-choice cards into a deliberate 4x2 laptop grid,
   prevents long time/price lines from clipping, and preserves the approved mobile
   swipe rail. No service, price, duration, booking, privacy, SEO or campaign data changes. */
body[data-page="services"] .service-choice-card strong{
  display:block;
  width:100%;
  max-width:100%;
  line-height:1.45;
  white-space:normal;
  overflow-wrap:normal;
  word-break:normal;
  text-wrap:balance;
}
@media(min-width:960px){
  body[data-page="services"] .service-choice-matrix{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media(min-width:761px) and (max-width:959px){
  body[data-page="services"] .service-choice-matrix{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  body[data-page="services"] .service-choice-card strong{
    font-size:10px;
    letter-spacing:.12em;
  }
}
@media(max-width:620px){
  body[data-page="services"] .service-jump-label{
    display:none;
  }
  body[data-page="services"] .service-jump-nav{
    scroll-padding-inline:12px;
  }
}


/* MNA2965 — signature curation, edited portfolio and concise private proof */
.private-proof-row{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);margin-top:8px}
.private-proof-item{padding:25px 26px 4px;border-right:1px solid var(--line);display:grid;gap:8px}
.private-proof-item:last-child{border-right:0}
.private-proof-item strong{font-family:var(--serif);font-size:clamp(24px,2.2vw,32px);font-weight:500;letter-spacing:-.035em;line-height:1.05}
.private-proof-item span{color:var(--muted);font-size:14px;line-height:1.62}
.signature-feature .image-label{max-width:calc(100% - 36px);white-space:normal;line-height:1.25}
.signature-feature img{object-position:center 48%}
.signature-story-panel{overflow:hidden}
.signature-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);margin-top:30px}
.signature-step-grid article{padding:25px 24px 4px;border-right:1px solid var(--line)}
.signature-step-grid article:last-child{border-right:0}
.signature-step-grid span{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:800;color:var(--muted);margin-bottom:14px}
.signature-step-grid h3{font-family:var(--serif);font-size:28px;line-height:1.02;letter-spacing:-.035em;margin:0 0 10px}
.signature-step-grid p{font-size:13.5px;line-height:1.58;margin:0;color:var(--muted)}
.client-moment-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:18px;align-items:stretch}
.client-moment-feature{display:grid;align-content:center;min-height:360px;padding:42px}
.client-moment-feature blockquote{font-family:var(--serif);font-size:clamp(31px,3.5vw,48px);line-height:1.18;letter-spacing:-.035em;margin:8px 0 22px}
.client-moment-notes{display:grid;gap:18px}
.client-moment-notes article{padding:29px;border:1px solid var(--line);border-radius:var(--radius-md);background:rgba(255,255,255,.38);display:grid;align-content:center}
.client-moment-notes p{font-family:var(--serif);font-size:23px;line-height:1.32;letter-spacing:-.02em;margin:0 0 17px}
.client-moment-notes span{font-size:12px;color:var(--muted)}
.portfolio-chapter{margin-top:68px}
.portfolio-chapter:first-child{margin-top:0}
.portfolio-chapter-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:end;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.portfolio-chapter-head h2{font-family:var(--serif);font-size:clamp(38px,4.7vw,64px);line-height:.98;letter-spacing:-.05em;margin:0}
.portfolio-chapter-head p{color:var(--muted);font-size:16px;line-height:1.68;margin:0;max-width:620px}
body[data-page="work"] .portfolio-chapter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body[data-page="work"] .portfolio-chapter-grid .work-card{grid-column:auto!important;min-width:0}
body[data-page="work"] .portfolio-chapter-grid .work-card img{height:310px!important;object-fit:cover}
body[data-page="work"] .portfolio-chapter-grid .work-body{padding:18px 18px 20px}
body[data-page="work"] .portfolio-chapter-grid .work-body h3{font-size:26px}
body[data-page="work"] .portfolio-chapter-grid .work-card p{font-size:13.5px;line-height:1.46}
body[data-page="work"] .portfolio-chapter-grid .tag-row .tag:nth-child(n+4){display:none}
@media(max-width:1100px){
  body[data-page="work"] .portfolio-chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  body[data-page="work"] .portfolio-chapter-grid .work-card img{height:360px!important}
  .signature-step-grid{grid-template-columns:repeat(2,1fr)}
  .signature-step-grid article:nth-child(2){border-right:0}
  .signature-step-grid article:nth-child(n+3){border-top:1px solid var(--line)}
}
@media(max-width:760px){
  .private-proof-row{grid-template-columns:1fr}
  .private-proof-item{border-right:0;border-bottom:1px solid var(--line);padding:18px 0}
  .private-proof-item:last-child{border-bottom:0}
  .client-moment-layout{grid-template-columns:1fr}
  .client-moment-feature{min-height:0;padding:28px}
  .client-moment-feature blockquote{font-size:clamp(29px,9vw,42px)}
  .portfolio-chapter{margin-top:46px}
  .portfolio-chapter-head{grid-template-columns:1fr;gap:10px;margin-bottom:16px;padding-bottom:14px}
  body[data-page="work"] .portfolio-chapter-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:0 6vw 10px 0;scrollbar-width:none}
  body[data-page="work"] .portfolio-chapter-grid::-webkit-scrollbar{display:none}
  body[data-page="work"] .portfolio-chapter-grid .work-card{flex:0 0 min(82vw,330px);scroll-snap-align:start}
  body[data-page="work"] .portfolio-chapter-grid .work-card img{height:clamp(300px,92vw,390px)!important}
  .signature-step-grid{grid-template-columns:1fr}
  .signature-step-grid article{border-right:0;border-bottom:1px solid var(--line);padding:20px 0}
  .signature-step-grid article:nth-child(n+3){border-top:0}
  .signature-step-grid article:last-child{border-bottom:0}
}

.note-grid-curated{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.atelier-notes-actions{margin-top:24px}
@media(max-width:980px){.note-grid-curated{grid-template-columns:1fr}}

/* MNA2966 — full-backtest responsive and reduced-motion hardening.
   These are narrow corrections for confirmed overflow cases only. */
@media (min-width:621px) and (max-width:980px){
  body[data-page="home"] .hero-card-clean{
    margin:16px 0!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
}
@media (max-width:1100px){
  body[data-page="bridal"] .tag-row{
    flex-wrap:wrap!important;
    min-width:0!important;
    max-width:100%!important;
  }
}
@media (max-width:620px){
  body[data-page="reviews"] .proof-strip{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
  }
  body[data-page="reviews"] .proof-strip > *{
    min-width:0!important;
    max-width:100%!important;
  }
}
@media (max-width:360px){
  body[data-page="book"] .booking-direction-grid{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    margin-inline:0!important;
  }
  body[data-page="book"] .booking-direction-grid .route-map-card{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
  }
}
@media (prefers-reduced-motion:reduce){
  html{
    scroll-behavior:auto!important;
  }
}
@media (max-width:620px){
  body[data-page="faq"] .faq-list details{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
  }
  body[data-page="faq"] .faq-list summary{
    min-width:0!important;
    max-width:100%!important;
    overflow-wrap:anywhere;
  }
}

/* MNA2967 — written-contact preference */
.booking-contact-preference{max-width:680px;margin:18px 0 0;color:var(--muted);font-size:13px;line-height:1.7}.booking-contact-preference a{color:var(--deep);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.contact-call-note{display:inline-block;margin-top:8px;color:var(--muted);font-size:12px;line-height:1.55}.contact-preference-section .visit-actions-lux a{display:flex;min-height:156px;flex-direction:column;justify-content:flex-start}.contact-preference-section .visit-actions-lux span{margin-top:auto;padding-top:12px}@media(max-width:620px){.booking-contact-preference{font-size:12px;line-height:1.65}.contact-preference-section .grid-head{margin-bottom:30px}.contact-preference-section .visit-actions-lux a{min-height:0}}


/* MNA2968 — responsive editorial card systems and native-cursor polish.
   Fixes the laptop/zoom layouts shown in review, signature, booking-decision
   and local-service sections while preserving all approved content and prices. */

/* The decorative custom cursor could appear as a stray dash in screenshots and
   distracted from the atelier's quiet visual language. Public pages now use the
   native pointer. Private invitation pages keep their separate campaign cursor. */
.mna-atelier-cursor{display:none!important}
body.mna-cursor-enabled{cursor:auto!important}
body.mna-cursor-enabled a,
body.mna-cursor-enabled button,
body.mna-cursor-enabled summary,
body.mna-cursor-enabled [role="button"]{cursor:pointer!important}

/* Selected Google words: one coherent editorial system instead of one large card
   followed by visually detached quotations. */
body[data-page="home"] .home-reviews-preview .client-moment-layout{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
body[data-page="home"] .home-reviews-preview .client-moment-notes{display:contents}
body[data-page="home"] .home-reviews-preview .client-moment-feature,
body[data-page="home"] .home-reviews-preview .client-moment-notes article{
  min-width:0;
  min-height:300px;
  padding:30px;
  border:1px solid var(--line);
  border-radius:var(--radius-md);
  background:
    radial-gradient(circle at 88% 0%,rgba(255,255,255,.70),transparent 52%),
    rgba(255,255,255,.42);
  box-shadow:0 12px 42px rgba(41,34,28,.045);
  display:flex;
  flex-direction:column;
  align-content:initial;
}
body[data-page="home"] .home-reviews-preview .client-moment-feature blockquote,
body[data-page="home"] .home-reviews-preview .client-moment-notes p{
  font-family:var(--serif);
  font-size:clamp(24px,2.05vw,31px);
  line-height:1.28;
  letter-spacing:-.025em;
  margin:10px 0 24px;
  color:var(--deep);
}
body[data-page="home"] .home-reviews-preview .client-moment-feature .author,
body[data-page="home"] .home-reviews-preview .client-moment-notes span{
  margin-top:auto;
  padding-top:18px;
  color:var(--muted);
  font-size:12px;
}
body[data-page="home"] .home-reviews-preview .stars{margin-bottom:4px}

/* Atelier Composition: make the four stages visibly intentional and compact,
   rather than a sparse ruled list that collapses into a long column. */
.signature-story-panel .signature-step-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  border-top:0;
  margin-top:32px;
}
.signature-story-panel .signature-step-grid article{
  min-width:0;
  min-height:178px;
  padding:23px 22px;
  border:1px solid var(--line)!important;
  border-radius:22px;
  background:
    radial-gradient(circle at 88% 0%,rgba(255,255,255,.62),transparent 55%),
    rgba(255,255,255,.35);
  display:flex;
  flex-direction:column;
}
.signature-story-panel .signature-step-grid article:nth-child(n){border-top:1px solid var(--line)!important}
.signature-story-panel .signature-step-grid span{margin-bottom:18px}
.signature-story-panel .signature-step-grid h3{margin-bottom:12px}
.signature-story-panel .signature-step-grid p{margin-top:auto}

/* The two practical four-card groups use four columns only when there is truly
   enough reading width. Typical laptops and browser zoom receive a calm 2x2 layout. */
body[data-page="services"] .service-booking-decision .local-intent-grid-four,
body[data-page="services"] .service-local-guide-section .local-intent-grid-four{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
body[data-page="services"] .service-booking-decision .local-intent-card,
body[data-page="services"] .service-local-guide-section .local-intent-card{
  min-width:0;
  padding:25px;
}
body[data-page="services"] .service-local-guide-section .local-intent-card p{
  line-height:1.62;
}
body[data-page="services"] .service-booking-decision .local-intent-card > a,
body[data-page="services"] .service-local-guide-section .local-intent-card > a{
  align-self:flex-start;
}

/* Keep anchored service sections clear of the sticky header and service strip. */
body[data-page="services"] .signature-experience-section,
body[data-page="services"] .service-booking-decision,
body[data-page="services"] .service-local-guide-section{
  scroll-margin-top:142px;
}

@media (min-width:701px) and (max-width:1100px){
  body[data-page="home"] .home-reviews-preview .client-moment-layout{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body[data-page="home"] .home-reviews-preview .client-moment-feature{
    grid-column:1/-1;
    min-height:240px;
  }
  body[data-page="home"] .home-reviews-preview .client-moment-notes article{
    min-height:260px;
  }

  .signature-story-panel .signature-step-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  body[data-page="services"] .service-booking-decision .local-intent-grid-four,
  body[data-page="services"] .service-local-guide-section .local-intent-grid-four{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:700px){
  /* Three review cards become one elegant swipe rail, reducing page length. */
  body[data-page="home"] .home-reviews-preview .client-moment-layout{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:min(84vw,330px);
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    padding:2px 2px 12px;
    scrollbar-width:thin;
    scrollbar-color:rgba(42,36,30,.20) transparent;
  }
  body[data-page="home"] .home-reviews-preview .client-moment-layout > article,
  body[data-page="home"] .home-reviews-preview .client-moment-notes article{
    scroll-snap-align:start;
    min-height:280px;
    padding:24px;
  }
  body[data-page="home"] .home-reviews-preview .client-moment-feature blockquote,
  body[data-page="home"] .home-reviews-preview .client-moment-notes p{
    font-size:clamp(25px,7.6vw,32px);
  }

  /* Signature stages also swipe horizontally instead of creating four long screens. */
  .signature-story-panel .signature-step-grid{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:min(80vw,300px);
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    padding:2px 2px 12px;
    scrollbar-width:thin;
    scrollbar-color:rgba(42,36,30,.20) transparent;
  }
  .signature-story-panel .signature-step-grid article{
    scroll-snap-align:start;
    min-height:190px;
  }

  /* Practical service cards remain easy to compare without four full vertical cards. */
  body[data-page="services"] .service-booking-decision .local-intent-grid-four,
  body[data-page="services"] .service-local-guide-section .local-intent-grid-four{
    display:grid;
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:min(84vw,320px);
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    padding:2px 2px 12px;
    scrollbar-width:thin;
    scrollbar-color:rgba(42,36,30,.20) transparent;
  }
  body[data-page="services"] .service-booking-decision .local-intent-card,
  body[data-page="services"] .service-local-guide-section .local-intent-card{
    scroll-snap-align:start;
    min-height:0;
    padding:22px;
  }
}


/* Long Danish treatment names remain inside service cards at laptop widths. */
body[data-page="services"] #service-menu-shell .service-card h3{
  font-size:clamp(24px,1.9vw,29px);
  overflow-wrap:anywhere;
  hyphens:auto;
  white-space:normal;
}


/* Quick-choice titles also wrap cleanly at Danish laptop widths. */
body[data-page="services"] .service-choice-card h3{
  white-space:normal;
  overflow-wrap:anywhere;
  hyphens:auto;
}


/* MNA2969 — technical polish, consultation clarity and consistent controls */
.signature-consultation{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.55fr) auto;align-items:center;gap:24px;margin:30px 0 34px;padding:20px 22px;border:1px solid rgba(42,36,30,.12);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.50),rgba(232,222,211,.22));box-shadow:0 12px 34px rgba(41,34,28,.04);}
.signature-consultation-heading{display:grid;gap:5px;}
.signature-consultation-heading span{font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);}
.signature-consultation-heading strong{font-family:var(--serif);font-size:25px;line-height:1.05;font-weight:500;letter-spacing:-.025em;color:var(--deep);}
.signature-consultation p{margin:0;color:var(--muted);font-size:14px;line-height:1.6;}
.signature-consultation-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border:1px solid rgba(42,36,30,.14);border-radius:999px;background:rgba(255,255,255,.62);color:var(--deep);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.signature-consultation-link:hover{transform:translateY(-1px);border-color:rgba(42,36,30,.25);box-shadow:0 10px 24px rgba(41,34,28,.08);}
.booking-composition-note{margin-top:22px;padding:18px 19px;border:1px solid var(--line);border-radius:21px;background:rgba(255,255,255,.38);}
.booking-composition-note strong{display:block;margin-bottom:7px;font-family:var(--serif);font-size:23px;line-height:1.05;font-weight:500;color:var(--deep);}
.booking-composition-note p{margin:0;color:var(--muted);font-size:13.5px;line-height:1.58;}
.booking-composition-note a{display:inline-flex;margin-top:11px;border-bottom:1px solid rgba(41,34,28,.34);padding-bottom:4px;color:var(--deep);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;}
.mobile-close{min-width:44px;min-height:44px;}
@media(min-width:981px){.desktop-header-book,.topbar .lang,.navlinks .nav-cta{min-height:44px;}}
@media(max-width:980px){.mobile-header-book,.mobile-menu,.topbar .lang{min-height:44px;}.service-jump-nav a{min-height:44px;}}
@media(max-width:760px){.signature-consultation{grid-template-columns:1fr;gap:13px;margin:24px 0 26px;padding:18px;border-radius:22px;}.signature-consultation-heading strong{font-size:23px;}.signature-consultation-link{width:100%;}.booking-composition-note{padding:17px;border-radius:20px;}}
@media(max-width:430px){.mobile-header-book,.mobile-menu,.topbar .lang{min-height:44px!important;}.mobile-close{width:44px;height:44px;}.signature-consultation p,.booking-composition-note p{font-size:13px;line-height:1.54;}}

/* MNA2970 — fixed consultation price and narrow-booking-card hardening */
@media (max-width:620px){
  body[data-page="book"] .booking-direction-grid .route-map-card > *{
    min-width:0;
    max-width:100%;
  }
  body[data-page="book"] .booking-direction-grid .route-map-card strong{
    font-size:clamp(22px,6vw,26px);
    line-height:1.06;
    overflow-wrap:anywhere;
    hyphens:auto;
  }
}

/* MNA2970 — consultation-note contrast inside the dark booking panel */
body[data-page="book"] .reservation-panel-primary .booking-composition-note{
  background:rgba(255,250,244,.94);
  border-color:rgba(255,250,244,.48);
  color:var(--deep);
  box-shadow:0 14px 34px rgba(0,0,0,.12);
}
body[data-page="book"] .reservation-panel-primary .booking-composition-note p{
  color:rgba(41,34,28,.74);
}

/* MNA2971 — original brand-voice restoration */
.brand-essence-line {
  margin: .4rem 0 .9rem;
  max-width: 40ch;
  color: var(--ink, #26211f);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(1.28rem, 1.9vw, 1.68rem);
  font-weight: 500;
  line-height: 1.18;
  letter-spacing: -.012em;
  text-wrap: balance;
}
.brand-essence-line-section {
  margin-top: .55rem;
  max-width: 40ch;
  color: var(--wine, #6f2838);
}
.founder-manifesto {
  margin: 1.15rem 0 0;
  max-width: 24ch;
  color: var(--wine, #6f2838);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(1.42rem, 2.2vw, 1.9rem);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -.018em;
}
.footer-dark-signature {
  margin-top: .55rem;
  color: rgba(255, 255, 255, .82);
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(1.05rem, 1.5vw, 1.3rem);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: .015em;
}
@media (max-width: 700px) {
  .brand-essence-line {
    max-width: 27ch;
    font-size: 1.34rem;
  }
  .founder-manifesto {
    font-size: 1.52rem;
  }
  .footer-dark-signature {
    max-width: 19rem;
    margin-inline: auto;
    font-size: 1.12rem;
  }
}

/* MNA2971 — work-route hardening and verified atelier cursor restoration */
.work-route-link{
  position:relative;
  z-index:3;
  pointer-events:auto;
  isolation:isolate;
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .mna-atelier-cursor{display:block!important;}
  body.mna-cursor-enabled,
  body.mna-cursor-enabled a,
  body.mna-cursor-enabled button,
  body.mna-cursor-enabled summary,
  body.mna-cursor-enabled [role="button"]{cursor:none!important;}
  body.mna-cursor-enabled input,
  body.mna-cursor-enabled textarea,
  body.mna-cursor-enabled select,
  body.mna-cursor-enabled [contenteditable="true"]{cursor:auto!important;}
}
@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){
  .mna-atelier-cursor{display:none!important;}
}

/* MNA2972 — laptop containment, balanced founder manifesto and quieter cursor */
.founder-manifesto{
  max-width:30ch;
  font-size:clamp(1.34rem,1.72vw,1.72rem);
  line-height:1.12;
  letter-spacing:-.016em;
}
.founder-manifesto span{display:block;}
.founder-manifesto span + span{margin-top:.28em;}

/* Keep the entire homepage service editorial inside a deterministic centred shell,
   including at Windows scaling and browser zoom levels that create in-between widths. */
body[data-page="home"] .home-service-preview{
  max-width:100vw;
  overflow-x:clip;
}
body[data-page="home"] .home-service-preview > .shell,
body[data-page="home"] .home-service-preview .shell{
  position:relative;
  left:auto;
  right:auto;
  transform:none;
  width:min(1180px,calc(100vw - 64px))!important;
  max-width:1180px!important;
  min-width:0;
  margin-inline:auto!important;
}
body[data-page="home"] .home-service-preview .grid-head,
body[data-page="home"] .home-service-preview .new-ritual-feature,
body[data-page="home"] .home-service-preview .service-grid-four,
body[data-page="home"] .home-service-preview .button-row{
  width:100%;
  max-width:100%;
  min-width:0;
}
body[data-page="home"] .home-service-preview .grid-head{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  gap:clamp(34px,4vw,66px);
}
body[data-page="home"] .home-service-preview .grid-head > *,
body[data-page="home"] .home-service-preview .new-ritual-feature > *,
body[data-page="home"] .home-service-preview .service-grid-four > *{
  min-width:0;
  max-width:100%;
}
body[data-page="home"] .home-service-preview .grid-head .big-title{
  max-width:9.2ch;
  overflow-wrap:normal;
  word-break:normal;
  text-wrap:balance;
}
body[data-page="home"] .home-service-preview .new-ritual-feature{
  grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);
  overflow:hidden;
}
body[data-page="home"] .home-service-preview .new-ritual-feature figure,
body[data-page="home"] .home-service-preview .new-ritual-copy{
  min-width:0;
  max-width:100%;
}
body[data-page="home"] .home-service-preview .new-ritual-copy h3,
body[data-page="home"] .home-service-preview .new-ritual-copy p,
body[data-page="home"] .home-service-preview .brand-essence-line{
  max-width:100%;
  overflow-wrap:break-word;
}
body[data-page="home"] .home-service-preview .service-grid-four{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
body[data-page="home"] .home-service-preview .service-card,
body[data-page="home"] .home-service-preview .service-meta,
body[data-page="home"] .home-service-preview .service-card h3,
body[data-page="home"] .home-service-preview .service-card p{
  min-width:0;
  max-width:100%;
}
body[data-page="home"] .home-service-preview .pill{
  max-width:100%;
}

@media (min-width:761px) and (max-width:1180px){
  body[data-page="home"] .home-service-preview > .shell,
  body[data-page="home"] .home-service-preview .shell{
    width:min(1040px,calc(100vw - 48px))!important;
  }
  body[data-page="home"] .home-service-preview .grid-head{
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
    gap:36px;
  }
  body[data-page="home"] .home-service-preview .service-grid-four{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:980px){
  body[data-page="home"] .home-service-preview .grid-head,
  body[data-page="home"] .home-service-preview .new-ritual-feature{
    grid-template-columns:1fr;
  }
  body[data-page="home"] .home-service-preview .grid-head .big-title{
    max-width:12ch;
  }
}
@media (max-width:760px){
  body[data-page="home"] .home-service-preview > .shell,
  body[data-page="home"] .home-service-preview .shell{
    width:calc(100vw - 24px)!important;
    max-width:none!important;
  }
  .founder-manifesto{
    max-width:25ch;
    font-size:1.44rem;
  }
}

/* Retain the signature cursor while preventing it from competing with the work. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .mna-atelier-cursor{width:18px;height:18px;margin:-9px 0 0 -9px;border-color:rgba(41,34,28,.48);background:rgba(248,244,238,.06);box-shadow:0 2px 10px rgba(41,34,28,.07);}
  .mna-atelier-cursor.is-visible{opacity:.72;}
  .mna-atelier-cursor.is-link{width:30px;height:30px;margin:-15px 0 0 -15px;background:rgba(248,244,238,.26);}
  .mna-atelier-cursor.is-visual{width:26px;height:26px;margin:-13px 0 0 -13px;border-color:rgba(118,105,94,.52);background:transparent;opacity:.58;}
  .mna-atelier-cursor.is-pressed{width:16px;height:16px;margin:-8px 0 0 -8px;}
}


/* MNA2972 — final home preview metadata containment */
@media (min-width:981px){
  body[data-page="home"] .home-service-preview .service-card .service-meta{
    display:flex!important;
    flex-wrap:wrap!important;
    align-content:flex-start;
    align-items:flex-start;
    gap:5px!important;
    min-height:64px!important;
    overflow:visible;
  }
  body[data-page="home"] .home-service-preview .service-card .service-meta .pill{
    flex:0 1 auto;
    max-width:100%;
    padding:6px 7px!important;
    font-size:8.6px!important;
    letter-spacing:.065em!important;
    line-height:1.15;
    white-space:nowrap;
  }
}

/* MNA2972 — preserve the approved swipeable service rail on phones */
@media (max-width:760px){
  body[data-page="home"] .home-service-preview .service-grid-four{
    display:grid;
    grid-template-columns:none!important;
    grid-auto-flow:column;
    grid-auto-columns:min(82vw,320px);
    align-items:stretch;
    gap:12px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:2px;
    padding:2px 2px 12px;
  }
  body[data-page="home"] .home-service-preview .service-grid-four > *{
    scroll-snap-align:start;
    min-width:0;
    width:auto;
    max-width:none;
    height:100%;
  }
}
@media (max-width:390px){
  body[data-page="home"] .home-service-preview .service-grid-four{
    grid-auto-columns:min(86vw,310px);
  }
}


/* MNA2975 — smoked-silver editorial founder and signature typography
   A restrained high-contrast serif treatment, smoked-silver tone and deliberate
   single-line composition on laptop/desktop. Smaller screens wrap naturally. */
:root{
  --atelier-silver:#666A6D;
}
.brand-essence-line,
.founder-manifesto{
  color:var(--atelier-silver);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-style:italic;
  font-weight:500;
  font-feature-settings:"kern" 1,"liga" 1;
  text-rendering:optimizeLegibility;
  text-wrap:pretty;
}
.brand-essence-line{
  margin:.48rem 0 1rem;
  max-width:34ch;
  font-size:clamp(1.38rem,1.72vw,1.78rem);
  line-height:1.08;
  letter-spacing:-.006em;
}
.brand-essence-line-section{
  margin-top:.62rem;
  color:var(--atelier-silver);
}
.founder-manifesto{
  margin:1.12rem 0 0;
  max-width:none;
  font-size:clamp(1.34rem,1.62vw,1.72rem);
  line-height:1.08;
  letter-spacing:-.004em;
}
@media (min-width:1180px){
  .founder-manifesto,
  .brand-essence-line{
    white-space:nowrap;
  }
  .home-founder-note .founder-note-copy{
    max-width:none;
  }
}
@media (max-width:1179px){
  .founder-manifesto{
    max-width:32ch;
    white-space:normal;
  }
  .brand-essence-line{
    max-width:31ch;
    white-space:normal;
  }
}
@media (max-width:700px){
  .founder-manifesto{
    margin-top:.9rem;
    max-width:27ch;
    font-size:1.45rem;
    line-height:1.1;
  }
  .brand-essence-line{
    max-width:27ch;
    font-size:1.38rem;
    line-height:1.1;
  }
}

/* MNA2975 — final poetic-line color specificity */
.founder-note-copy .founder-manifesto,
.new-ritual-copy .brand-essence-line,
.signature-story-panel .brand-essence-line,
.brand-essence-line.brand-essence-line-section{
  color:var(--atelier-silver)!important;
}

/* MNA2975 — editorial silver line-fit preservation
   The silver italic treatment preserves the verified line-fit correction, but the shared 34ch
   cap could silently clip the single-line sentence inside Services and Atelier
   signature panels. At laptop/desktop widths the line now uses the available
   editorial column; narrower screens retain natural wrapping. */
@media (min-width:1180px){
  .signature-story-panel .brand-essence-line{
    max-width:none;
    width:max-content;
    min-width:0;
  }
}



/* MNA2975 — smoked-silver editorial accent and restored cross cursor
   The editorial lines use a dark platinum/smoked-silver tone with accessible
   contrast on the warm atelier backgrounds. The desktop-only cross cursor restores
   the earlier visual language while remaining disabled for touch and reduced motion. */
:root{--atelier-silver:#666A6D;}
.founder-note-copy .founder-manifesto,
.new-ritual-copy .brand-essence-line,
.signature-story-panel .brand-essence-line,
.brand-essence-line.brand-essence-line-section{
  color:var(--atelier-silver)!important;
}

@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .mna-atelier-cursor,
  .mna-atelier-cursor.is-link,
  .mna-atelier-cursor.is-visual,
  .mna-atelier-cursor.is-pressed{
    display:block!important;
    width:28px!important;
    height:28px!important;
    margin:-14px 0 0 -14px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    mix-blend-mode:difference;
    opacity:0;
  }
  .mna-atelier-cursor.is-visible{opacity:.76!important;}
  .mna-atelier-cursor.is-native{opacity:0!important;}
  .mna-atelier-cursor::before,
  .mna-atelier-cursor::after{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    border-radius:999px;
    background:#fff;
    transform:translate(-50%,-50%);
    transition:width .18s cubic-bezier(.22,.61,.36,1),height .18s cubic-bezier(.22,.61,.36,1),opacity .18s ease;
  }
  .mna-atelier-cursor::before{width:14px;height:1.25px;opacity:.92;}
  .mna-atelier-cursor::after{width:1.25px;height:14px;opacity:.68;}
  .mna-atelier-cursor.is-visual::before{width:18px;opacity:.96;}
  .mna-atelier-cursor.is-visual::after{height:18px;opacity:.72;}
  .mna-atelier-cursor.is-link::before{width:21px;height:1.2px;opacity:.98;}
  .mna-atelier-cursor.is-link::after{height:21px;width:1.2px;opacity:.58;}
  .mna-atelier-cursor.is-pressed::before{width:10px;}
  .mna-atelier-cursor.is-pressed::after{height:10px;opacity:.50;}
}
@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){
  .mna-atelier-cursor{display:none!important;}
}

/* MNA2976 — guaranteed breathing room before card footers and action links
   Scope: every bottom-aligned card action keeps a visible separation from the body
   copy even when the longest card consumes all available flexible space. */
:root{--card-footer-breathing:28px;--card-footer-breathing-mobile:22px;}

/* Decision and local-service cards: preserve the shared baseline while guaranteeing
   that the underlined action never touches the final line of body copy. */
.local-intent-card > a,
.service-booking-decision .local-intent-card > a,
.service-local-guide-section .local-intent-card > a,
body.pedicure-page .local-intent-card > a{
  margin-top:auto;
  padding-top:var(--card-footer-breathing);
}

/* Other card footers already had separators; make their minimum rhythm explicit so
   later copy changes cannot collapse the space. */
body[data-page="services"] .service-choice-card strong{
  margin-top:auto;
  padding-top:16px;
}
.service-grid > .service-card > .best,
body.pedicure-page #choose-pedicure .service-card .best,
body.pedicure-page #vaelg-pedicure .service-card .best{
  margin-top:auto;
  padding-top:20px;
}
.review .author,
body[data-page="home"] .home-reviews-preview .client-moment-feature .author,
body[data-page="home"] .home-reviews-preview .client-moment-notes span{
  margin-top:auto;
  padding-top:22px;
}

@media(max-width:760px){
  .local-intent-card > a,
  .service-booking-decision .local-intent-card > a,
  .service-local-guide-section .local-intent-card > a,
  body.pedicure-page .local-intent-card > a{
    padding-top:var(--card-footer-breathing-mobile);
  }
  body[data-page="services"] .service-choice-card strong{
    padding-top:14px;
  }
}

/* MNA2977 — Work, Decoded · Quiet Concierge · Care Before Craft */
body.mna-dialog-open{overflow:hidden;}
.mna-dialog-backdrop{
  position:fixed;inset:0;z-index:420;display:grid;place-items:center;
  padding:clamp(14px,3vw,36px);background:rgba(18,16,14,.54);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
}
.mna-dialog-backdrop[hidden]{display:none!important;}
.mna-dialog-card{
  position:relative;width:min(100%,1080px);max-height:min(90vh,900px);overflow:auto;
  border:1px solid rgba(248,244,238,.72);border-radius:38px;
  background:radial-gradient(circle at 90% 0%,rgba(255,255,255,.74),transparent 40%),linear-gradient(145deg,#fffaf3,#f1e8de);
  box-shadow:0 36px 110px rgba(15,13,12,.28);padding:clamp(28px,4vw,56px);
  overscroll-behavior:contain;
}
.mna-dialog-close{
  position:sticky;float:right;top:0;z-index:2;width:46px;height:46px;margin:-10px -10px 12px 20px;
  border:1px solid var(--line);border-radius:999px;background:rgba(255,250,243,.94);
  color:var(--deep);font-size:26px;line-height:1;cursor:pointer;
}
.mna-dialog-close:focus-visible,.work-decode-trigger:focus-visible,.concierge-trigger:focus-visible{
  outline:2px solid rgba(41,34,28,.78);outline-offset:4px;
}
.work-decode-layout{display:grid;grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr);gap:clamp(28px,5vw,62px);align-items:center;clear:both;}
.work-decode-media{margin:0;overflow:hidden;border-radius:30px;background:var(--taupe-soft);box-shadow:var(--shadow-soft);}
.work-decode-media img{width:100%;height:min(66vh,650px);object-fit:cover;}
.work-decode-copy .big-title{font-size:clamp(42px,5vw,68px);}
.work-decode-description{margin:18px 0 26px;color:var(--muted);font-size:16px;line-height:1.68;}
.work-decode-facts{display:grid;margin:0;border-top:1px solid var(--line);}
.work-decode-facts>div{display:grid;grid-template-columns:minmax(126px,.36fr) minmax(0,1fr);gap:20px;padding:17px 0;border-bottom:1px solid var(--line);}
.work-decode-facts dt{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:850;color:rgba(78,70,62,.82);}
.work-decode-facts dd{margin:0;color:var(--deep);font-size:14px;line-height:1.58;}
.work-decode-note{margin:20px 0 0;padding-left:18px;border-left:1px solid rgba(102,106,109,.48);color:var(--muted);font-size:13px;line-height:1.65;}
body[data-page="work"] .portfolio-chapter-grid .work-card{display:flex;flex-direction:column;}
body[data-page="work"] .portfolio-chapter-grid .work-body{display:flex;flex:1;flex-direction:column;min-width:0;}
.work-decode-trigger{
  width:100%;min-height:46px;margin-top:auto;padding:20px 0 4px;border:0;border-top:1px solid var(--line);
  background:transparent;color:var(--deep);cursor:pointer;text-align:left;
  font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:850;
}
.work-decode-trigger::after{content:"↗";float:right;font-size:14px;font-weight:500;letter-spacing:0;}
.work-decode-trigger:hover{color:#666a6d;}
.work-concierge-row{margin-top:18px;}
.concierge-panel{width:min(100%,920px);}
.concierge-panel>.big-title{max-width:760px;}
.concierge-panel>.lead{max-width:760px;margin-bottom:28px;}
.concierge-brief{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;clear:both;}
.concierge-brief article{min-width:0;padding:22px 20px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.42);}
.concierge-brief span,.care-kicker{display:block;margin-bottom:14px;color:rgba(102,106,109,.92);font-size:10px;font-weight:850;letter-spacing:.15em;text-transform:uppercase;}
.concierge-brief h3{font-family:var(--serif);font-size:28px;line-height:1.02;letter-spacing:-.03em;margin:0 0 10px;}
.concierge-brief p{margin:0;color:var(--muted);font-size:13px;line-height:1.58;}
.concierge-privacy{margin:22px 0 0;padding:16px 18px;border-left:1px solid rgba(102,106,109,.48);color:var(--muted);font-size:13px;line-height:1.6;}
button.btn.concierge-trigger{cursor:pointer;}
.care-before-craft{grid-column:1/-1;display:grid;grid-template-columns:minmax(180px,.42fr) minmax(260px,.8fr) minmax(0,1.35fr);gap:28px;align-items:center;background:radial-gradient(circle at 0 0,rgba(102,106,109,.10),transparent 42%),rgba(255,255,255,.42);}
.care-before-craft .care-kicker{margin:0;}
.care-before-craft h3{margin:0;font-size:clamp(30px,3vw,43px);}
.care-before-craft p{margin:0;}
@media(max-width:980px){
  .work-decode-layout{grid-template-columns:1fr;align-items:start;}
  .work-decode-media img{height:clamp(300px,62vw,520px);}
  .concierge-brief{grid-template-columns:repeat(2,minmax(0,1fr));}
  .care-before-craft{grid-template-columns:1fr;gap:12px;}
}
@media(max-width:620px){
  .mna-dialog-backdrop{padding:8px;place-items:end center;}
  .mna-dialog-card{width:100%;max-height:92vh;border-radius:28px 28px 20px 20px;padding:24px 20px 28px;}
  .mna-dialog-close{width:44px;height:44px;margin:-4px -2px 8px 14px;}
  .work-decode-media img{height:310px;}
  .work-decode-copy .big-title{font-size:clamp(38px,12vw,54px);}
  .work-decode-facts>div{grid-template-columns:1fr;gap:6px;padding:14px 0;}
  .concierge-brief{grid-template-columns:1fr;gap:9px;}
  .concierge-brief article{padding:17px 16px;}
  .concierge-brief h3{font-size:25px;}
}
@media(prefers-reduced-motion:reduce){
  .mna-dialog-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none;}
}


/* Danish homepage heading needs a slightly wider editorial measure at full laptop widths. */
@media(min-width:981px){
  html:lang(da) body[data-page="home"] .home-service-preview .grid-head .big-title{max-width:11ch;}
}

/* MNA2978 — intentional two-line founder manifesto on phones and unique signature image crop */
@media (min-width:701px){
  .founder-note-copy .founder-manifesto span{
    display:inline;
    white-space:normal;
  }
  .founder-note-copy .founder-manifesto span + span{
    margin-top:0;
  }
}
@media (max-width:700px){
  .founder-note-copy .founder-manifesto{
    max-width:none;
    width:100%;
    text-wrap:initial;
  }
  .founder-note-copy .founder-manifesto span{
    display:block;
    width:max-content;
    max-width:100%;
    white-space:nowrap;
  }
  .founder-note-copy .founder-manifesto span + span{
    margin-top:.34em;
  }
}
@media (max-width:360px){
  .founder-note-copy .founder-manifesto{
    font-size:1.38rem;
  }
}
body[data-page="home"] .signature-feature figure img{
  object-position:center 48%;
}
@media (max-width:700px){
  body[data-page="home"] .signature-feature figure img{
    object-position:center 44%;
  }
}



/* MNA2980: composition authorship system */
.composition-authorship{
  margin:15px 0 0;
  color:#666a6d;
  font-family:var(--serif);
  font-size:clamp(19px,2vw,24px);
  font-style:italic;
  font-weight:500;
  letter-spacing:-.015em;
  line-height:1.2;
}
.new-ritual-copy>.composition-authorship{margin-top:15px;}
.signature-story-panel .composition-authorship{margin-top:16px;}
.composition-principles{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-top:23px;
}
.composition-principles>span:not(.composition-principles-label){
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 11px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.38);
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.composition-principles-label{
  flex:0 0 100%;
  margin-bottom:3px;
  color:rgba(78,70,62,.82);
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.work-decode-authorship{
  margin:0 0 22px;
  color:#666a6d;
  font-family:var(--serif);
  font-size:clamp(18px,2vw,23px);
  font-style:italic;
  font-weight:500;
  letter-spacing:-.015em;
  line-height:1.25;
}
.work-decode-authorship[hidden]{display:none;}
@media(max-width:700px){
  .composition-authorship{font-size:20px;}
  .composition-principles{gap:7px;margin-top:20px;}
  .composition-principles>span:not(.composition-principles-label){min-height:30px;padding:6px 10px;font-size:9px;}
  .work-decode-authorship{margin-bottom:18px;font-size:19px;}
}

/* MNA2982: editorial authority and shareable authored compositions */
.article-authority{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 18px;
  margin:18px 0 34px;
  padding:14px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.105em;
  text-transform:uppercase;
}
.article-authority time{white-space:nowrap;color:rgba(41,34,28,.74)}
.work-share-status{
  min-height:1.4em;
  margin:12px 0 0;
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
}
.work-decode-panel .button-row{align-items:center}
@media (max-width:700px){
  .article-authority{display:grid;gap:6px;margin-bottom:28px;line-height:1.45}
  .work-decode-panel .button-row .btn{width:100%}
}
.work-share-trigger[hidden]{display:none!important}

/* MNA2983: mobile reading and manifesto rhythm polish
   Scope: phone reading gutters, compact non-obstructive booking capsule, and responsive Founder manifesto line fitting. */
@media (max-width:760px){
  /* Reading pages need a true side gutter because article markup is intentionally not wrapped in .shell. */
  .article.article-guide{
    width:calc(100% - 36px);
    max-width:680px;
    min-width:0;
    margin-inline:auto;
  }
  .article.article-guide h1,
  .article.article-guide h2,
  .article.article-guide p,
  .article.article-guide .article-authority,
  .article.article-guide .article-cta{
    max-width:100%;
  }

  /* Keep the booking action available without masking a wide band of live content. */
  body:has(.mobile-sticky-booking){padding-bottom:0;}
  .mobile-sticky-booking{
    left:0;
    right:0;
    width:max-content;
    max-width:calc(100vw - 32px);
    margin-inline:auto;
    bottom:calc(10px + env(safe-area-inset-bottom));
  }
  .mobile-sticky-booking a{
    min-height:48px;
    justify-content:center;
    padding:11px 22px;
    gap:0;
  }
  .mobile-sticky-booking span{white-space:nowrap;}
  .mobile-sticky-booking small{display:none!important;}

  /* Guides already end with a dedicated booking CTA. Keep long-form reading completely unobstructed. */
  body:has(.article.article-guide) .mobile-sticky-booking{display:none;}
  body:has(.article.article-guide){padding-bottom:0;}
}

@media (max-width:700px){
  /* Keep the two manifesto thoughts together when they fit, otherwise wrap only between them with no artificial gap. */
  .founder-note-copy .founder-manifesto{
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    column-gap:.18em;
    row-gap:0;
    width:100%;
    max-width:none;
    font-size:1.38rem;
    line-height:1.08;
  }
  .founder-note-copy .founder-manifesto span,
  .founder-note-copy .founder-manifesto span + span{
    display:inline-block;
    width:auto;
    max-width:100%;
    margin:0;
    white-space:nowrap;
  }
}

@media (max-width:380px){
  .article.article-guide{width:calc(100% - 28px);}
  .mobile-sticky-booking{max-width:calc(100vw - 24px);}
  .mobile-sticky-booking a{padding-inline:18px;}
}

/* MNA2983: tablet continuation of guide reading gutter */
@media (min-width:761px) and (max-width:900px){
  .article.article-guide{
    width:calc(100% - 48px);
    max-width:840px;
    min-width:0;
    margin-inline:auto;
  }
}


/* MNA3001 MICROTYPOGRAPHY REFINEMENT */
:root{
  --mna-type-micro: .6875rem;       /* 11px at default browser scale */
  --mna-type-micro-compact: .65625rem; /* 10.5px */
}
.trust-label,
.image-label,
.footer-action-link .footer-link-note,
.choice-matrix .choice-card span,
.home-path-lite .route-map-card span,
.route-map-compact .route-map-card span,
.guides-notes-section .note-kicker,
#service-menu-shell .service-group-toggle-meta,
.composition-principles>span:not(.composition-principles-label){
  font-size:var(--mna-type-micro);
}
@media(max-width:760px){
  .mobile-header-book,
  .lang,
  body[data-page="services"] .pill,
  body[data-page="work"] .portfolio-grid-final .tag,
  .bridal-detail-row span,
  body[data-page="services"] .service-jump-nav a,
  body[data-page="services"] .service-jump-label,
  .bridal-direction-showcase .tag-row .tag,
  .home-service-preview .service-card .service-meta .pill,
  .new-ritual-copy .pill,
  .composition-principles>span:not(.composition-principles-label){
    font-size:var(--mna-type-micro-compact);
  }
}


/* MNA3001 MICROTYPE LEGIBILITY FLOOR
   Small utility text stays discreet, but no key labels need to live at 8.5–10px. */
@media(max-width:760px){
  body .pill,
  body .tag,
  body .trust-label,
  body .image-label,
  body .signal-kicker,
  body .care-kicker,
  body .note-kicker,
  body .composition-principles-label,
  body .signature-consultation-link,
  body .local-intent-card > span,
  body .footer-dark-details span,
  body .footer-action-link .footer-link-note,
  body .footer-dark-links a[href*="google.com"] span,
  body[data-page="services"] .service-choice-card strong,
  body[data-page="home"] .home-service-preview .service-card .service-meta .pill,
  body[data-page="home"] .home-work-preview .tag,
  body[data-page="work"] .portfolio-grid-final .tag{
    font-size:var(--mna-type-micro-compact) !important;
  }
}


/* MNA3001 MICROTYPE FINAL MOBILE POLISH */
@media(max-width:760px){
  body .footer-action-link > span,
  body .proof-strip span,
  body[data-page="bridal"] .mini-proof span,
  body[data-page="bridal"] .bridal-timeline span,
  body[data-page="bridal"] .wedding-signal span,
  body .home-booking-line a,
  body .signature-consultation-heading span,
  body .booking-composition-note a,
  body .bridal-home-note{
    font-size:var(--mna-type-micro-compact) !important;
  }
}

/* MNA3003 WORK CARD TITLE ALIGNMENT
   Reserve the same two-row tag area on four-column desktop chapters so card titles share a clean baseline. */
@media(min-width:1101px){
  body[data-page="work"] .portfolio-chapter-grid .tag-row{
    min-height:70px;
    align-content:flex-start;
  }
}

/* MNA3003 CSP-SAFE EDITORIAL THESIS
   Replaces the two former inline white-space/max-width declarations. */
.atelier-thesis-wrap{white-space:normal;max-width:100%;}

/* MNA3003 ACCESSIBLE HIDDEN UTILITY */
.visually-hidden{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;}


/* MNA3004 — bridal page desktop crop parity. */
.bridal-quiet-picture{display:block;width:100%;}
@media (min-width:1101px){
  body[data-page="bridal"] .bridal-image-grid .bridal-quiet-visual img{
    object-position:50% 50%!important;
  }
}

/* MNA3005 — homepage Quiet Bridal French desktop crop repair.
   The homepage markup uses .bridal-home-portrait. Keep phone/tablet rendering untouched;
   on laptop/desktop use a 4:5 frame so the full image width, including the right thumb,
   remains inside the crop. */
@media (min-width:981px){
  body[data-page="home"] .bridal-home-portrait{
    width:min(100%,486px);
    aspect-ratio:4/5;
    justify-self:end;
  }
  body[data-page="home"] .bridal-home-portrait img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:50% 50%!important;
  }
}


/* MNA3007 - restrained editorial next chapter + preserved MNA3006 mobile composition polish */
.work-next-chapter{padding-top:8px;}
.work-next-chapter-inner{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:clamp(32px,6vw,84px);
  align-items:start;
  padding-top:38px;
  border-top:1px solid var(--line);
}
.work-next-chapter .eyebrow{margin-bottom:10px;}
.work-next-chapter-title{
  margin:0;
  color:var(--deep);
  font-family:var(--serif);
  font-size:clamp(38px,4.35vw,62px);
  font-weight:500;
  letter-spacing:-.047em;
  line-height:.98;
}
.work-next-chapter-copy{max-width:620px;padding-top:5px;}
.work-next-chapter-copy p{margin:0 0 18px;color:var(--muted);font-size:16px;line-height:1.7;}
.work-next-chapter-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 0 5px;
  border-bottom:1px solid rgba(41,36,31,.34);
  color:var(--deep);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1.4;
  text-transform:uppercase;
  transition:border-color .2s ease,transform .2s ease;
}
.work-next-chapter-link:hover{border-color:var(--deep);transform:translateX(2px);}
.work-next-chapter-link:focus-visible{outline:2px solid currentColor;outline-offset:6px;border-radius:2px;}
@media(max-width:760px){
  .work-next-chapter{padding-top:0;}
  .work-next-chapter-inner{grid-template-columns:1fr;gap:17px;padding-top:30px;}
  .work-next-chapter-title{font-size:clamp(36px,11.5vw,48px);}
  .work-next-chapter-copy{padding-top:0;}
  .work-next-chapter-copy p{font-size:15.5px;margin-bottom:16px;}
  .work-next-chapter-link{font-size:10.5px;letter-spacing:.1em;}
}
@media(max-width:700px){
  body[data-page="home"] .signature-feature figure img{
    height:clamp(330px,88vw,400px);
    object-position:center 44%;
  }
  body[data-page="home"] .signature-feature .service-meta{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    width:100%;
  }
  body[data-page="home"] .signature-feature .service-meta .pill{
    width:100%;
    min-width:0;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:8px 5px;
    font-size:9px;
    letter-spacing:.09em;
    line-height:1.15;
    text-align:center;
    white-space:nowrap;
  }
}
@media(max-width:360px){
  body[data-page="home"] .signature-feature .service-meta .pill{font-size:8.4px;letter-spacing:.055em;padding-inline:3px;}
}

/* MNA3010 · Composed For discovery and Samantha story */
.home-composed-for-teaser{
  margin-top:30px;
  padding:24px 0 22px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:grid;
  grid-template-columns:150px minmax(0,1fr) auto;
  gap:26px;
  align-items:center;
}
.composed-for-cameo{margin:0;min-width:0;}
.composed-for-cameo img{
  width:100%;
  height:auto;
  aspect-ratio:335/235;
  object-fit:cover;
  object-position:center;
  border-radius:22px;
  border:1px solid rgba(42,36,30,.10);
  box-shadow:0 14px 36px rgba(41,34,28,.08);
}
.composed-for-cameo figcaption,
.samantha-story-portrait figcaption{
  margin-top:8px;
  color:var(--muted);
  font-size:9.5px;
  line-height:1.4;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.composed-for-cameo figcaption a,
.samantha-story-portrait figcaption a{border-bottom:1px solid rgba(107,98,89,.32);}
.home-composed-for-copy{min-width:0;}
.home-composed-for-copy .eyebrow{margin-bottom:6px;}
.home-composed-for-copy h3{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(32px,3.5vw,46px);
  font-weight:500;
  line-height:.98;
  letter-spacing:-.035em;
}
.home-composed-for-copy>p:last-child{margin:10px 0 0;color:var(--muted);font-size:14.5px;line-height:1.65;max-width:580px;}
.composed-for-role{
  margin:8px 0 0;
  color:var(--taupe);
  font-size:10px;
  line-height:1.45;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-weight:800;
}
.composed-for-text-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  width:max-content;
  max-width:100%;
  padding:8px 0;
  border-bottom:1px solid rgba(41,36,31,.42);
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  transition:transform .2s ease,border-color .2s ease;
}
.composed-for-text-link:hover{transform:translateX(2px);border-color:var(--deep);}
.composed-for-text-link:focus-visible{outline:2px solid currentColor;outline-offset:6px;border-radius:2px;}
.composed-for-feature{
  display:grid;
  grid-template-columns:minmax(160px,210px) minmax(0,1fr);
  gap:34px;
  align-items:center;
  padding:26px;
}
.composed-for-cameo-work{width:100%;}
.composed-for-feature-copy{min-width:0;max-width:760px;}
.composed-for-feature-copy .big-title{margin-bottom:0;}
.composed-for-feature-copy .lead{margin:15px 0 13px;max-width:700px;}
.samantha-story-grid{
  display:grid;
  grid-template-columns:minmax(230px,335px) minmax(0,1fr);
  gap:clamp(40px,7vw,86px);
  align-items:center;
}
.samantha-story-portrait{margin:0;width:100%;align-self:start;}
.samantha-story-portrait img{
  width:100%;
  height:auto;
  aspect-ratio:335/235;
  object-fit:cover;
  border-radius:32px;
  border:1px solid rgba(42,36,30,.10);
  box-shadow:var(--shadow-soft);
}
.samantha-story-copy{min-width:0;max-width:720px;}
.samantha-story-copy .big-title{margin-bottom:18px;}
.samantha-story-copy .lead{max-width:700px;}
.samantha-story-copy .brand-essence-line{margin-top:28px;}

@media(max-width:980px){
  .home-composed-for-teaser{grid-template-columns:128px minmax(0,1fr);gap:20px;}
  .home-composed-for-teaser>.composed-for-text-link{grid-column:2;justify-self:start;}
  .composed-for-feature{grid-template-columns:150px minmax(0,1fr);gap:24px;}
  .samantha-story-grid{grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:34px;}
}
@media(max-width:620px){
  .home-composed-for-teaser{
    grid-template-columns:92px minmax(0,1fr);
    gap:16px;
    margin-top:24px;
    padding:22px 0 20px;
  }
  .home-composed-for-copy h3{font-size:34px;}
  .home-composed-for-copy>p:last-child{font-size:13.5px;line-height:1.55;}
  .composed-for-role{font-size:9px;letter-spacing:.10em;}
  .home-composed-for-teaser>.composed-for-text-link{grid-column:1/-1;margin-top:2px;}
  .composed-for-cameo img{border-radius:17px;}
  .composed-for-feature{grid-template-columns:96px minmax(0,1fr);gap:18px;padding:20px;align-items:start;}
  .composed-for-feature-copy .big-title{font-size:clamp(36px,11vw,48px);}
  .composed-for-feature-copy .lead{font-size:15px;line-height:1.65;margin:12px 0 10px;}
  .composed-for-feature .composed-for-text-link{font-size:9.5px;}
  .samantha-story-grid{grid-template-columns:1fr;gap:28px;}
  .samantha-story-portrait{width:min(100%,335px);}
  .samantha-story-portrait img{border-radius:26px;}
}


/* MNA3013 · curated photography update */
.home-private-moment{
  margin:30px auto 0;
  width:min(100%,720px);
}
.home-private-moment img{
  display:block;
  width:100%;
  height:clamp(260px,30vw,420px);
  object-fit:cover;
  object-position:center 28%;
  border-radius:28px;
  border:1px solid rgba(42,36,30,.10);
  box-shadow:var(--shadow-soft);
}
.home-private-moment figcaption{
  margin-top:9px;
  color:var(--muted);
  font-family:var(--serif);
  font-size:16px;
  font-style:italic;
}
.home-composed-for-teaser .composed-for-cameo img,
.composed-for-cameo-work img{object-position:center 18%;}
.samantha-story-portrait img{aspect-ratio:4/5;object-position:center top;}
.samantha-stage-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,470px);gap:clamp(32px,6vw,72px);align-items:center;}
.samantha-stage-image{margin:0;}
.samantha-stage-image img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center;border-radius:32px;border:1px solid rgba(42,36,30,.10);box-shadow:var(--shadow-soft);}
@media(max-width:760px){
  .home-private-moment{margin-top:22px;width:100%;}
  .home-private-moment img{border-radius:22px;}
  .samantha-stage-panel{grid-template-columns:1fr;gap:24px;}
  .samantha-stage-image{width:min(100%,440px);}
  .samantha-stage-image img{border-radius:25px;}
}

/* MNA3014 · nail-safe crop hardening
   Backtested against the full 16-work portfolio, homepage selected work,
   Why Private moment, Atelier Composition, Bridal and Samantha story.
   Keep the photographed nail composition visible instead of forcing short crops. */
body[data-page="home"] .home-work-preview .work-card img,
body[data-page="work"] .portfolio-chapter-grid .work-card img{
  width:100%;
  height:auto!important;
  aspect-ratio:4/5;
  object-fit:cover;
  object-position:center center;
}
body[data-page="home"] .home-work-preview .work-card:hover img,
body[data-page="work"] .portfolio-chapter-grid .work-card:hover img{
  transform:none;
}
body[data-page="home"] .home-private-moment img{
  object-position:center 38%;
}
.work-decode-media img{
  width:100%;
  height:auto!important;
  max-height:min(66vh,650px);
  object-fit:contain;
  object-position:center;
  background:var(--taupe-soft);
}

/* MNA3016 · coffee image native-resolution correction
   The supplied photograph is 720 px wide. Do not upscale it into a wide desktop
   banner or manufacture larger derivatives: keep it at/below native width. */
body[data-page="home"] .home-private-moment{
  width:min(100%,640px);
}
body[data-page="home"] .home-private-moment img{
  width:100%;
  height:clamp(300px,31vw,390px);
  object-fit:cover;
  object-position:center 38%;
}
@media(max-width:760px){
  body[data-page="home"] .home-private-moment{
    width:100%;
  }
  body[data-page="home"] .home-private-moment img{
    height:clamp(260px,72vw,360px);
    object-position:center 38%;
  }
}

/* MNA3017 · Visit dual atelier moments + Samantha headline keep-together */
.keep-together{white-space:nowrap;}
.atelier-moment-grid{
  grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);
  gap:clamp(28px,4vw,52px);
  align-items:center;
}
.atelier-moment-visuals{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(12px,1.8vw,20px);
  align-items:start;
}
.atelier-moment-visuals .atelier-moment-photo{
  margin:0;
  width:100%;
  min-width:0;
}
.atelier-moment-visuals .atelier-moment-photo img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:center;
}
.atelier-moment-photo-secondary img{object-position:center 44%;}
@media(max-width:980px){
  .atelier-moment-grid{grid-template-columns:1fr;gap:26px;}
  .atelier-moment-copy{max-width:760px;}
}
@media(max-width:620px){
  .atelier-moment-visuals{gap:10px;}
  .atelier-moment-visuals .image-label{padding:7px 9px;font-size:8.5px;letter-spacing:.10em;}
}


/* MNA3018 · exact coffee photograph + separated Visit moments
   The supplied coffee photo is shown in its native 9:16 composition without crop.
   Visit client images are intentionally separated in the page journey rather than paired. */
body[data-page="home"] .home-private-moment{
  width:min(100%,360px);
  margin:30px auto 0;
}
body[data-page="home"] .home-private-moment img{
  display:block;
  width:100%;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:26px;
}
.atelier-moment-section .atelier-moment-grid{
  grid-template-columns:minmax(280px,.82fr) minmax(0,1fr);
  gap:clamp(32px,5vw,64px);
  align-items:center;
}
.atelier-moment-section .atelier-moment-photo{
  margin:0;
  width:min(100%,430px);
  justify-self:center;
}
.atelier-moment-section .atelier-moment-photo img{
  display:block;
  width:100%;
  height:auto!important;
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:center;
}
.visit-secondary-moment-section{
  padding-top:28px;
  padding-bottom:36px;
}
.visit-secondary-moment-shell{
  display:flex;
  justify-content:flex-end;
}
.visit-secondary-moment{
  width:min(100%,460px);
  margin:0 clamp(0px,5vw,70px) 0 0;
}
.visit-secondary-moment img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:center 44%;
  border-radius:32px;
  border:1px solid rgba(42,36,30,.10);
  box-shadow:var(--shadow-soft);
}
.visit-secondary-moment figcaption{
  margin-top:9px;
  color:var(--muted);
  font-family:var(--serif);
  font-size:16px;
  font-style:italic;
}
@media(max-width:980px){
  .atelier-moment-section .atelier-moment-grid{grid-template-columns:1fr;gap:26px;}
  .atelier-moment-section .atelier-moment-photo{justify-self:start;width:min(100%,430px);}
  .visit-secondary-moment-shell{justify-content:center;}
  .visit-secondary-moment{margin:0;width:min(100%,430px);}
}
@media(max-width:620px){
  body[data-page="home"] .home-private-moment{width:min(100%,360px);margin-top:22px;}
  body[data-page="home"] .home-private-moment img{border-radius:22px;}
  .visit-secondary-moment img{border-radius:24px;}
}

/* MNA3019 · integrated experiential photography
   The images now belong to the page structure instead of floating in empty space. */
body[data-page="home"] .home-private-experience-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,340px);
  gap:clamp(34px,5vw,72px);
  align-items:center;
  margin-top:18px;
}
body[data-page="home"] .home-private-experience-grid .private-proof-row{
  grid-template-columns:1fr;
  border-top:1px solid var(--line);
  margin:0;
}
body[data-page="home"] .home-private-experience-grid .private-proof-item{
  border-right:0;
  border-bottom:1px solid var(--line);
  padding:22px 0;
}
body[data-page="home"] .home-private-experience-grid .private-proof-item:last-child{
  border-bottom:0;
}
body[data-page="home"] .home-private-moment{
  width:100%;
  max-width:340px;
  margin:0;
  justify-self:end;
}
body[data-page="home"] .home-private-moment img{
  display:block;
  width:100%;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  border-radius:28px;
  box-shadow:var(--shadow-soft);
}
body[data-page="home"] .home-private-moment figcaption{margin-top:9px;}

body[data-page="visit"] .visit-route-hero{
  padding-bottom:clamp(46px,6vw,82px);
}
body[data-page="visit"] .visit-route-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,420px);
  gap:clamp(42px,7vw,94px);
  align-items:center;
}
body[data-page="visit"] .visit-route-hero-copy .lead{
  max-width:760px;
}
body[data-page="visit"] .visit-route-hero-photo{
  margin:0;
  width:100%;
  max-width:420px;
  justify-self:end;
}
body[data-page="visit"] .visit-route-hero-photo img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/4;
  object-fit:cover;
  object-position:center 44%;
  border-radius:32px;
  border:1px solid rgba(42,36,30,.10);
  box-shadow:var(--shadow-soft);
}
body[data-page="visit"] .visit-route-hero-photo figcaption{
  margin-top:9px;
  color:var(--muted);
  font-family:var(--serif);
  font-size:16px;
  font-style:italic;
}
@media(max-width:900px){
  body[data-page="home"] .home-private-experience-grid{
    grid-template-columns:1fr minmax(240px,300px);
    gap:28px;
  }
  body[data-page="visit"] .visit-route-hero-grid{
    grid-template-columns:1fr;
    gap:30px;
  }
  body[data-page="visit"] .visit-route-hero-photo{
    justify-self:start;
    width:min(100%,400px);
  }
}
@media(max-width:680px){
  body[data-page="home"] .home-private-experience-grid{
    grid-template-columns:1fr;
    gap:24px;
  }
  body[data-page="home"] .home-private-moment{
    width:min(100%,320px);
    justify-self:start;
  }
  body[data-page="home"] .home-private-moment img{border-radius:22px;}
  body[data-page="visit"] .visit-route-hero-photo{
    width:min(100%,360px);
  }
  body[data-page="visit"] .visit-route-hero-photo img{border-radius:24px;}
}


/* MNA3020 · compact Why Private coffee moment + Visit narrative order
   Keep the supplied 720x1280 coffee photograph unchanged. The frame crops only
   from the bottom, removing the long dark-table tail while preserving cup,
   wrists, wooden board and every visible nail. */
body[data-page="home"] .home-private-experience-grid{
  display:block;
  margin-top:18px;
}
body[data-page="home"] .home-private-experience-grid .private-proof-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid var(--line);
  margin:0;
}
body[data-page="home"] .home-private-experience-grid .private-proof-item{
  border-right:1px solid var(--line);
  border-bottom:0;
  padding:24px 28px 20px;
}
body[data-page="home"] .home-private-experience-grid .private-proof-item:first-child{padding-left:28px;}
body[data-page="home"] .home-private-experience-grid .private-proof-item:last-child{
  border-right:0;
  border-bottom:0;
}
body[data-page="home"] .home-private-moment{
  width:min(100%,580px);
  max-width:580px;
  margin:28px auto 0;
  justify-self:auto;
}
body[data-page="home"] .home-private-moment img{
  display:block;
  width:100%;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:initial!important;
  object-position:initial!important;
  border-radius:0;
  box-shadow:none;
}
body[data-page="home"] .home-private-moment{
  overflow:hidden;
  aspect-ratio:720/760;
  border-radius:28px;
  border:1px solid rgba(42,36,30,.10);
  box-shadow:var(--shadow-soft);
}
body[data-page="home"] .home-private-moment figcaption{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}
body[data-page="home"] .home-why-private>.shell.panel{
  padding-bottom:clamp(30px,3.5vw,46px);
}
@media(max-width:860px){
  body[data-page="home"] .home-private-experience-grid .private-proof-row{
    grid-template-columns:1fr;
  }
  body[data-page="home"] .home-private-experience-grid .private-proof-item,
  body[data-page="home"] .home-private-experience-grid .private-proof-item:first-child{
    border-right:0;
    border-bottom:1px solid var(--line);
    padding:20px 0;
  }
  body[data-page="home"] .home-private-experience-grid .private-proof-item:last-child{border-bottom:0;}
  body[data-page="home"] .home-private-moment{
    width:min(100%,520px);
    margin-top:22px;
  }
}
@media(max-width:620px){
  body[data-page="home"] .home-private-moment{
    width:100%;
    border-radius:22px;
    margin-top:20px;
  }
  body[data-page="home"] .home-why-private>.shell.panel{
    padding-bottom:28px;
  }
}


/* MNA3020b · final coffee frame
   The exact supplied image is top-aligned. Only the dark lower table is hidden;
   no nail, wrist, cup or wooden-board detail is cropped. */
body[data-page="home"] .home-private-moment{
  width:min(100%,560px);
  max-width:560px;
  margin:26px auto 0;
  overflow:visible;
  aspect-ratio:auto;
  border:0;
  border-radius:0;
  box-shadow:none;
}
body[data-page="home"] .home-private-moment-frame{
  width:100%;
  aspect-ratio:720/740;
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(42,36,30,.10);
  box-shadow:var(--shadow-soft);
}
body[data-page="home"] .home-private-moment-frame img{
  display:block;
  width:100%;
  height:auto!important;
  max-width:none;
  object-fit:initial!important;
  object-position:initial!important;
  border:0;
  border-radius:0;
  box-shadow:none;
}
body[data-page="home"] .home-private-moment figcaption{
  position:static;
  left:auto;
  width:auto;
  height:auto;
  overflow:visible;
  margin-top:8px;
  color:var(--muted);
  font-family:var(--serif);
  font-size:15px;
  font-style:italic;
}
@media(max-width:620px){
  body[data-page="home"] .home-private-moment{width:100%;margin-top:20px;}
  body[data-page="home"] .home-private-moment-frame{border-radius:22px;}
}


/* MNA3021 · remove homepage coffee moment + Visit image label treatment */
body[data-page="home"] .home-private-experience-grid{
  display:block;
  margin-top:18px;
}
body[data-page="home"] .home-private-experience-grid .private-proof-row{
  margin-bottom:0;
}
body[data-page="home"] .home-why-private>.shell.panel{
  padding-bottom:clamp(26px,3vw,40px);
}
body[data-page="visit"] .visit-route-hero-photo{
  position:relative;
}
body[data-page="visit"] .visit-route-hero-photo .visit-route-label{
  top:18px;
  left:18px;
}
@media(max-width:620px){
  body[data-page="visit"] .visit-route-hero-photo .visit-route-label{
    top:14px;
    left:14px;
  }
}

/* MNA3022 · Samantha copy accuracy + Visit mobile editorial rhythm
   Mobile Visit keeps the same hierarchy as desktop without presenting two tall images back-to-back. */
@media(max-width:760px){
  body[data-page="visit"] .visit-route-hero{
    padding-bottom:34px;
  }
  body[data-page="visit"] .visit-route-hero-grid{
    gap:22px;
  }
  body[data-page="visit"] .visit-route-hero-photo{
    width:min(92%,340px);
    max-width:340px;
    justify-self:center;
  }
  body[data-page="visit"] .visit-route-hero-photo img{
    aspect-ratio:4/5;
    object-fit:cover;
    object-position:center 43%;
    border-radius:24px;
  }
  body[data-page="visit"] .atelier-moment-section{
    padding-top:44px;
    padding-bottom:52px;
  }
  body[data-page="visit"] .atelier-moment-section .atelier-moment-grid{
    display:flex;
    flex-direction:column;
    gap:18px;
  }
  body[data-page="visit"] .atelier-moment-section .atelier-moment-copy{
    order:1;
    width:100%;
    padding:26px 24px 28px;
    border-radius:26px;
  }
  body[data-page="visit"] .atelier-moment-section .atelier-moment-photo{
    order:2;
    width:min(92%,340px);
    max-width:340px;
    justify-self:auto;
    align-self:center;
  }
  body[data-page="visit"] .atelier-moment-section .atelier-moment-photo img{
    width:100%;
    height:auto!important;
    aspect-ratio:4/5;
    object-fit:cover;
    object-position:center 49%;
    border-radius:24px;
  }
  body[data-page="visit"] .atelier-moment-section .atelier-moment-photo .image-label{
    top:14px;
    left:14px;
    padding:8px 12px;
    font-size:9px;
    letter-spacing:.12em;
  }
  body[data-page="visit"] .contact-preference-section{
    padding-top:50px;
  }
}
@media(max-width:430px){
  body[data-page="visit"] .visit-route-hero-photo,
  body[data-page="visit"] .atelier-moment-section .atelier-moment-photo{
    width:min(94%,330px);
    max-width:330px;
  }
  body[data-page="visit"] .atelier-moment-section .atelier-moment-copy{
    padding:24px 20px 26px;
  }
}


/* MNA3023 · Samantha pearl concept + Visit mobile editorial protection
   The second Visit image is centered on phone; sticky booking behavior is handled in site.js. */
@media(max-width:760px){
  body[data-page="visit"] .atelier-moment-section .atelier-moment-photo{align-self:center;}
}


/* MNA3025 — founder identity: exactly one separator dot, EN/DA Home + Atelier */
body[data-page="atelier"] .founder-identity,
body[data-page="home"] .founder-identity{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:.38rem .72rem;
  margin:.92rem 0 0;
}
body[data-page="atelier"] .founder-identity::before,
body[data-page="atelier"] .founder-identity::after,
body[data-page="home"] .founder-identity::before,
body[data-page="home"] .founder-identity::after,
body[data-page="atelier"] .founder-identity-name::after,
body[data-page="home"] .founder-identity-name::after,
body[data-page="atelier"] .founder-identity-role::before,
body[data-page="home"] .founder-identity-role::before{content:none!important;}
body[data-page="atelier"] .founder-identity-name,
body[data-page="home"] .founder-identity-name{
  font-family:var(--serif);
  font-size:clamp(1.72rem,2.25vw,2.18rem);
  font-weight:500;
  line-height:1;
  letter-spacing:-.025em;
  color:var(--ink);
}
body[data-page="atelier"] .founder-identity-role-wrap,
body[data-page="home"] .founder-identity-role-wrap{
  display:inline-flex;
  align-items:baseline;
  gap:.58rem;
  white-space:nowrap;
}
body[data-page="atelier"] .founder-identity-separator,
body[data-page="home"] .founder-identity-separator{
  font-family:var(--serif);
  font-size:1.25rem;
  line-height:1;
  color:var(--muted);
}
body[data-page="atelier"] .founder-identity-role,
body[data-page="home"] .founder-identity-role{
  font-size:.68rem;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
}
@media(max-width:700px){
  body[data-page="atelier"] .founder-identity,
  body[data-page="home"] .founder-identity{margin:.78rem 0 0;gap:.28rem .62rem;}
  body[data-page="atelier"] .founder-identity-name,
  body[data-page="home"] .founder-identity-name{font-size:1.62rem;}
  body[data-page="atelier"] .founder-identity-role,
  body[data-page="home"] .founder-identity-role{font-size:.61rem;letter-spacing:.11em;}
  body[data-page="atelier"] .founder-identity-separator,
  body[data-page="home"] .founder-identity-separator{font-size:1.08rem;}
}

/* MNA3031 — founder signature: deliberate sentence break on phones only */
body[data-page="atelier"] .founder-manifesto .founder-mobile-break,
body[data-page="home"] .founder-manifesto .founder-mobile-break{
  display:none;
}
@media(max-width:700px){
  body[data-page="atelier"] .founder-manifesto .founder-mobile-break,
  body[data-page="home"] .founder-manifesto .founder-mobile-break{
    display:block;
  }
}


/* MNA3035 — Integrated Planway booking experience.
   Scope: /en/book/ and /da/book/ only. Premium cross-device iframe shell with external fallback.
   Desktop/laptop refinement: focused 980px booking window and viewport-aware frame height; mobile retains Planway's official 1100px height. */
body[data-page="book"] .booking-reservation-hero{padding-top:clamp(2.8rem,6vw,5.4rem);padding-bottom:clamp(2.6rem,5vw,4.5rem)}
body[data-page="book"] .booking-hero-grid{align-items:center}
@media(min-width:1100px){body[data-page="book"] .booking-direction-grid{grid-template-columns:repeat(12,minmax(0,1fr))}body[data-page="book"] .booking-direction-grid .route-map-card:nth-child(-n+4){grid-column:span 3}body[data-page="book"] .booking-direction-grid .route-map-card:nth-child(n+5){grid-column:span 4}}
body[data-page="book"] .booking-direction-intro{display:grid;gap:14px;align-content:end}
body[data-page="book"] .booking-direction-intro .lead{margin:0}
body[data-page="book"] .booking-guide-skip{justify-self:start;display:inline-flex;align-items:baseline;gap:7px;padding-bottom:4px;border-bottom:1px solid rgba(41,34,28,.24);font-size:12px;font-weight:700;letter-spacing:.035em;color:rgba(41,34,28,.76);transition:border-color .2s ease,color .2s ease}
body[data-page="book"] .booking-guide-skip:hover{color:var(--deep);border-color:rgba(41,34,28,.58)}
body[data-page="book"] .booking-guide-skip span{font-weight:600;color:rgba(41,34,28,.58)}
body[data-page="book"] .booking-embed-section{position:relative;padding-top:clamp(3.6rem,7vw,6rem);padding-bottom:clamp(4rem,8vw,7rem);background:linear-gradient(180deg,rgba(255,250,243,.48),rgba(232,222,211,.22))}
body[data-page="book"] .booking-embed-heading{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.75fr);gap:48px;align-items:end;margin-bottom:32px}
body[data-page="book"] .booking-embed-heading .lead{margin:0;max-width:620px}
body[data-page="book"] .booking-widget-shell{overflow:hidden;width:min(100%,980px);margin-inline:auto;border:1px solid rgba(42,36,30,.13);border-radius:30px;background:#fffaf3;box-shadow:0 26px 76px rgba(41,34,28,.10)}
body[data-page="book"] .booking-widget-topline{min-height:60px;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;padding:0 22px;border-bottom:1px solid rgba(42,36,30,.10);background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(248,244,238,.76));color:var(--deep)}
body[data-page="book"] .booking-widget-topline strong{font-size:11px;letter-spacing:.13em;text-transform:uppercase}
body[data-page="book"] .booking-widget-topline em{justify-self:end;font-family:var(--serif);font-style:normal;font-size:18px;color:rgba(41,34,28,.64)}
body[data-page="book"] .booking-live-dot{width:7px;height:7px;border-radius:50%;background:#76695e;box-shadow:0 0 0 5px rgba(118,105,94,.10)}
body[data-page="book"] .booking-widget-frame-wrap{position:relative;background:#fff;min-height:clamp(720px,calc(100vh - 180px),860px)}
body[data-page="book"] .booking-planway-frame{display:block;width:100%;height:clamp(720px,calc(100vh - 180px),860px);border:0;background:#fff}
body[data-page="book"] .booking-widget-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px;border-top:1px solid rgba(42,36,30,.10);background:rgba(248,244,238,.72)}
body[data-page="book"] .booking-widget-foot p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
body[data-page="book"] .booking-widget-foot p a{border-bottom:1px solid rgba(41,34,28,.28)}
body[data-page="book"] .booking-external-fallback{flex:0 0 auto;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--deep);border-bottom:1px solid rgba(41,34,28,.34);padding-bottom:3px}
body[data-page="book"] .booking-noscript{margin:0;padding:16px 24px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
body[data-page="book"] .booking-practical-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:46px;align-items:start}
body[data-page="book"] .booking-practical-section .booking-composition-note{margin-top:28px}
body[data-page="book"] #atelier-calendar{scroll-margin-top:104px}
@media(min-width:981px){
 body[data-page="book"] .booking-embed-heading{width:min(100%,980px);margin-inline:auto;margin-bottom:28px}
 body[data-page="book"] .booking-widget-foot{padding-inline:22px}
}
@media(max-width:980px){
 body[data-page="book"] .booking-embed-heading,body[data-page="book"] .booking-practical-layout{grid-template-columns:1fr;gap:26px}
 body[data-page="book"] .booking-widget-shell{width:100%}
 body[data-page="book"] .booking-widget-frame-wrap{min-height:1100px}
 body[data-page="book"] .booking-planway-frame{height:1100px}
}
@media(max-width:620px){
 body[data-page="book"] .booking-reservation-hero{padding-top:2rem;padding-bottom:2.6rem}
 body[data-page="book"] .booking-embed-section{padding-top:3rem;padding-bottom:4rem}
 body[data-page="book"] .booking-embed-heading{margin-bottom:22px;gap:14px}
 body[data-page="book"] .booking-widget-shell{border-radius:22px;margin-inline:-4px}
 body[data-page="book"] .booking-widget-topline{min-height:58px;grid-template-columns:auto 1fr;padding:0 15px;gap:9px}
 body[data-page="book"] .booking-widget-topline strong{font-size:9.5px;letter-spacing:.11em}
 body[data-page="book"] .booking-widget-topline em{display:none}
 body[data-page="book"] .booking-widget-frame-wrap{min-height:1100px}
 body[data-page="book"] .booking-planway-frame{height:1100px}
 body[data-page="book"] .booking-widget-foot{display:grid;gap:11px;padding:15px 16px}
 body[data-page="book"] .booking-external-fallback{justify-self:start}
 body[data-page="book"] #atelier-calendar{scroll-margin-top:78px}
}
@media(max-width:390px){body[data-page="book"] .booking-widget-frame-wrap{min-height:1100px}body[data-page="book"] .booking-planway-frame{height:1100px}}

/* MNA3036 — Atelier Reservation Suite
   Editorial page first; Planway appears only after an intentional reservation action. */
body[data-page="book"] .booking-editorial-hero{padding-top:clamp(34px,5vw,72px);padding-bottom:clamp(58px,7vw,96px)}
body[data-page="book"] .booking-editorial-hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,.78fr);gap:clamp(42px,7vw,96px);align-items:center}
body[data-page="book"] .booking-editorial-copy{max-width:720px}
body[data-page="book"] .booking-editorial-copy .display{max-width:9.2ch}
body[data-page="book"] .booking-editorial-copy .hero-copy{max-width:650px}
body[data-page="book"] .booking-editorial-visual{position:relative;margin:0;overflow:hidden;aspect-ratio:4/5;border-radius:42px;background:var(--taupe-soft);box-shadow:0 36px 90px rgba(41,34,28,.13)}
body[data-page="book"] .booking-editorial-visual::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,250,243,.48);border-radius:inherit;pointer-events:none}
body[data-page="book"] .booking-editorial-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 54%;transform:scale(1.01)}
body[data-page="book"] .booking-editorial-visual figcaption{position:absolute;left:22px;right:22px;bottom:22px;z-index:2;display:grid;gap:4px;padding:17px 19px;border:1px solid rgba(255,255,255,.42);border-radius:20px;background:rgba(25,20,17,.38);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fffaf3}
body[data-page="book"] .booking-editorial-visual figcaption span{font-size:9px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;opacity:.78}
body[data-page="book"] .booking-editorial-visual figcaption strong{font-family:var(--serif);font-size:21px;line-height:1.12;font-weight:500;letter-spacing:-.015em}
body[data-page="book"] .booking-guide-skip{border:0;border-bottom:1px solid rgba(41,34,28,.24);background:transparent;cursor:pointer;font-family:inherit}
body[data-page="book"] .booking-inline-trigger{display:inline-flex;margin-top:11px;padding:0 0 4px;border:0;border-bottom:1px solid rgba(41,34,28,.34);background:transparent;color:var(--deep);cursor:pointer;font:800 10px/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase}
body[data-page="book"] .booking-entry-section{position:relative;padding-top:clamp(62px,8vw,116px);padding-bottom:clamp(70px,9vw,126px);overflow:hidden;background:radial-gradient(circle at 88% 20%,rgba(118,86,66,.11),transparent 31%),linear-gradient(145deg,#f9f4ed 0%,#eee4da 100%)}
body[data-page="book"] .booking-entry-stage{position:relative;display:grid;grid-template-columns:minmax(190px,.34fr) minmax(0,1fr);gap:clamp(28px,5vw,68px);align-items:center;min-height:440px;padding:clamp(34px,5.6vw,76px);overflow:hidden;border:1px solid rgba(41,34,28,.13);border-radius:44px;background:rgba(255,250,243,.64);box-shadow:0 32px 90px rgba(41,34,28,.09)}
body[data-page="book"] .booking-entry-stage::before{content:"";position:absolute;inset:18px;border:1px solid rgba(118,86,66,.16);border-radius:31px;pointer-events:none}
body[data-page="book"] .booking-entry-mark{position:relative;display:grid;place-items:center;align-self:stretch;border-right:1px solid rgba(41,34,28,.11);opacity:.72}
body[data-page="book"] .booking-entry-mark img{width:min(150px,70%);height:auto;filter:sepia(.12) saturate(.68)}
body[data-page="book"] .booking-entry-copy{position:relative;z-index:1;max-width:820px}
body[data-page="book"] .booking-entry-copy .big-title{max-width:11ch;font-size:clamp(46px,5.3vw,78px)}
body[data-page="book"] .booking-entry-copy .lead{max-width:700px;margin-top:17px}
body[data-page="book"] .booking-entry-trust{display:flex;flex-wrap:wrap;gap:8px 20px;margin:25px 0 28px;color:rgba(41,34,28,.68);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
body[data-page="book"] .booking-entry-trust span{display:inline-flex;align-items:center;gap:9px}
body[data-page="book"] .booking-entry-trust span::before{content:"";width:5px;height:5px;border-radius:50%;background:#765642;opacity:.72}
body[data-page="book"] .booking-entry-note{margin:17px 0 0;color:var(--muted);font-size:11px;line-height:1.6}
body[data-page="book"] .booking-entry-note a{border-bottom:1px solid rgba(41,34,28,.28)}
body[data-page="book"] .booking-suite-backdrop{z-index:680;padding:clamp(14px,2vw,28px);background:rgba(28,21,17,.72);backdrop-filter:blur(24px) saturate(.76);-webkit-backdrop-filter:blur(24px) saturate(.76);animation:bookingSuiteBackdropIn .2s ease both}
body[data-page="book"] .booking-suite-card{position:relative;display:grid;grid-template-columns:minmax(360px,.40fr) minmax(0,1fr);width:min(94vw,1460px);height:min(92dvh,920px);max-height:920px;overflow:hidden;border:1px solid rgba(255,250,243,.54);border-radius:26px;background:#fffaf3;box-shadow:0 40px 128px rgba(17,12,9,.38),inset 0 0 0 1px rgba(255,255,255,.18);animation:bookingSuiteEnter .24s cubic-bezier(.2,.72,.24,1) both}
body[data-page="book"] .booking-suite-editorial{position:relative;min-width:0;overflow:hidden;background:#2b201a;color:#fffaf3}
body[data-page="book"] .booking-suite-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;filter:saturate(.84) contrast(1.01) brightness(.98);transform:scale(1.015)}
body[data-page="book"] .booking-suite-editorial-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(46,32,25,.08) 0%,rgba(46,32,25,.12) 45%,rgba(38,26,20,.76) 100%),linear-gradient(90deg,rgba(42,28,21,.2),transparent 66%)}
body[data-page="book"] .booking-suite-brand{position:absolute;top:28px;left:28px;right:24px;z-index:2;display:flex;align-items:center;gap:11px;color:#fffaf3}
body[data-page="book"] .booking-suite-brand img{width:28px;height:auto;filter:brightness(0) invert(1);opacity:.88}
body[data-page="book"] .booking-suite-brand span{font-size:8.5px;font-weight:800;letter-spacing:.22em}
body[data-page="book"] .booking-suite-editorial-copy{position:absolute;left:30px;right:30px;bottom:32px;z-index:2}
body[data-page="book"] .booking-suite-editorial-copy>span{display:block;margin-bottom:12px;font-size:8.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;opacity:.68}
body[data-page="book"] .booking-suite-editorial-copy h2{margin:0;max-width:11ch;font-family:var(--serif);font-size:clamp(43px,3.6vw,60px);font-weight:500;line-height:.94;letter-spacing:-.042em}
body[data-page="book"] .booking-suite-editorial-copy em{display:block;margin-top:18px;font-family:var(--serif);font-size:16px;font-style:italic;color:rgba(255,250,243,.88)}
body[data-page="book"] .booking-suite-editorial-copy p{max-width:350px;margin:11px 0 0;color:rgba(255,250,243,.72);font-size:12.5px;line-height:1.62}
body[data-page="book"] .booking-suite-main{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;background:#fff}
body[data-page="book"] .booking-suite-header{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:68px;padding:11px 16px 11px 20px;border-bottom:1px solid rgba(41,34,28,.095);background:linear-gradient(180deg,#fffdfa,#faf6f0)}
body[data-page="book"] .booking-suite-masthead{display:flex;align-items:center;gap:12px;min-width:0}
body[data-page="book"] .booking-suite-masthead-mark{width:24px;height:auto;flex:0 0 auto;opacity:.72}
body[data-page="book"] .booking-suite-masthead>div{display:grid;gap:3px;min-width:0}
body[data-page="book"] .booking-suite-header span{font-size:8.5px;font-weight:800;letter-spacing:.19em;text-transform:uppercase;color:rgba(41,34,28,.52)}
body[data-page="book"] .booking-suite-header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--serif);font-size:18px;font-weight:500;color:var(--deep)}
body[data-page="book"] .booking-suite-close{position:static;float:none;flex:0 0 40px;width:40px;height:40px;margin:0;border-color:rgba(41,34,28,.12);background:rgba(255,250,243,.66);font-size:24px;line-height:1;color:rgba(41,34,28,.72);box-shadow:none}
body[data-page="book"] .booking-suite-close:hover{background:#fffaf3;border-color:rgba(41,34,28,.24);color:var(--deep)}
body[data-page="book"] .booking-suite-frame-wrap{position:relative;min-height:0;overflow:hidden;background:#fff}
body[data-page="book"] .booking-suite-frame{position:relative;z-index:2;width:100%;height:100%;min-height:0;background:#fff;opacity:0;transition:opacity .28s ease}
body[data-page="book"] .booking-suite-frame.is-loaded{opacity:1}
body[data-page="book"] .booking-suite-loading{position:absolute;inset:0;z-index:1;display:grid;place-content:center;justify-items:center;gap:8px;padding:30px;text-align:center;background:radial-gradient(circle at 50% 43%,rgba(118,86,66,.07),transparent 32%),#fffaf3;color:var(--deep);transition:opacity .28s ease,visibility .28s ease}
body[data-page="book"] .booking-suite-loading.is-hidden{opacity:0;visibility:hidden}
body[data-page="book"] .booking-suite-loading-mark{display:grid;justify-items:center;gap:10px;width:62px;margin-bottom:7px}
body[data-page="book"] .booking-suite-loading-mark img{width:30px;height:auto;opacity:.58;animation:bookingSuiteMarkIn .58s ease both}
body[data-page="book"] .booking-suite-loading-mark span{display:block;width:0;height:1px;background:linear-gradient(90deg,transparent,#765642,transparent);animation:bookingSuiteLine 1.05s cubic-bezier(.2,.7,.25,1) .08s both}
body[data-page="book"] .booking-suite-loading strong{margin-top:3px;font-family:var(--serif);font-size:25px;font-weight:500;letter-spacing:-.015em}
body[data-page="book"] .booking-suite-loading em{color:var(--muted);font-size:10.5px;font-style:normal;letter-spacing:.015em}
body[data-page="book"] .booking-suite-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:46px;padding:8px 18px 8px 20px;border-top:1px solid rgba(41,34,28,.085);background:#faf6f0}
body[data-page="book"] .booking-suite-footer p{display:flex;align-items:center;gap:7px;margin:0;color:rgba(87,77,68,.7);font-size:9.5px;line-height:1.4}
body[data-page="book"] .booking-suite-footer p>span:first-child{font-weight:650;letter-spacing:.025em;color:rgba(41,34,28,.68)}
body[data-page="book"] .booking-suite-footer p a{border-bottom:1px solid rgba(41,34,28,.2)}
body[data-page="book"] .booking-suite-footer .booking-external-fallback{display:inline-flex;align-items:center;gap:5px;padding-bottom:2px;border-bottom:1px solid rgba(41,34,28,.2);font-size:8.5px;letter-spacing:.12em;color:rgba(41,34,28,.66)}
body[data-page="book"] .booking-suite-footer .booking-external-fallback:hover{color:var(--deep);border-color:rgba(41,34,28,.45)}
@media(max-width:1180px){body[data-page="book"] .booking-editorial-hero-grid{grid-template-columns:minmax(0,1fr) minmax(350px,.72fr);gap:44px}body[data-page="book"] .booking-suite-card{grid-template-columns:330px minmax(0,1fr)}body[data-page="book"] .booking-suite-editorial-copy h2{font-size:46px}}
@media(max-width:900px){body[data-page="book"] .booking-editorial-hero-grid{grid-template-columns:1fr;gap:32px}body[data-page="book"] .booking-editorial-copy{max-width:760px}body[data-page="book"] .booking-editorial-copy .display{max-width:10ch}body[data-page="book"] .booking-editorial-visual{width:min(100%,620px);aspect-ratio:16/10}body[data-page="book"] .booking-editorial-visual>img{object-position:center 58%}body[data-page="book"] .booking-entry-stage{grid-template-columns:1fr;min-height:0}body[data-page="book"] .booking-entry-mark{display:none}body[data-page="book"] .booking-suite-card{grid-template-columns:1fr;width:min(96vw,920px);height:min(95dvh,980px)}body[data-page="book"] .booking-suite-editorial{display:none}}
@media(max-width:620px){body[data-page="book"] .booking-editorial-hero{padding-top:24px;padding-bottom:48px}body[data-page="book"] .booking-editorial-hero-grid{gap:25px}body[data-page="book"] .booking-editorial-copy .display{font-size:clamp(48px,14vw,68px)}body[data-page="book"] .booking-editorial-visual{width:100%;aspect-ratio:4/3;border-radius:28px}body[data-page="book"] .booking-editorial-visual figcaption{left:13px;right:13px;bottom:13px;padding:13px 14px;border-radius:16px}body[data-page="book"] .booking-editorial-visual figcaption strong{font-size:18px}body[data-page="book"] .booking-entry-section{padding-top:50px;padding-bottom:64px}body[data-page="book"] .booking-entry-stage{padding:38px 24px 40px;border-radius:30px}body[data-page="book"] .booking-entry-stage::before{inset:10px;border-radius:23px}body[data-page="book"] .booking-entry-copy .big-title{font-size:clamp(42px,12vw,58px)}body[data-page="book"] .booking-entry-trust{display:grid;gap:9px;margin:22px 0 25px}body[data-page="book"] .booking-suite-backdrop{padding:0;place-items:stretch;background:#fffaf3;backdrop-filter:none;-webkit-backdrop-filter:none}body[data-page="book"] .booking-suite-card{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;box-shadow:none}body[data-page="book"] .booking-suite-header{min-height:60px;padding:8px 10px 8px 13px;background:#fffaf3}body[data-page="book"] .booking-suite-masthead{gap:9px}body[data-page="book"] .booking-suite-masthead-mark{width:20px}body[data-page="book"] .booking-suite-header span{font-size:7.5px;letter-spacing:.17em}body[data-page="book"] .booking-suite-header strong{font-size:15.5px}body[data-page="book"] .booking-suite-close{width:40px;height:40px;flex-basis:40px;background:transparent}body[data-page="book"] .booking-suite-footer{min-height:42px;padding:7px 12px;gap:8px;background:#fffaf3}body[data-page="book"] .booking-suite-footer p{font-size:8.5px;gap:5px}body[data-page="book"] .booking-suite-footer .booking-external-fallback{font-size:7.5px;letter-spacing:.1em}body[data-page="book"] .booking-suite-loading strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){body[data-page="book"] .booking-suite-backdrop,body[data-page="book"] .booking-suite-card,body[data-page="book"] .booking-suite-frame,body[data-page="book"] .booking-suite-loading-mark img,body[data-page="book"] .booking-suite-loading-mark span{animation:none;transition:none}}
@keyframes bookingSuiteBackdropIn{from{opacity:0}to{opacity:1}}
@keyframes bookingSuiteEnter{from{opacity:0;transform:translateY(10px) scale(.995)}to{opacity:1;transform:none}}
@keyframes bookingSuiteMarkIn{from{opacity:0;transform:translateY(4px)}to{opacity:.58;transform:none}}
@keyframes bookingSuiteLine{0%{width:0;opacity:0}35%{opacity:1}100%{width:62px;opacity:.72}}


/* MNA3040 — House-language additions: bridal note, visual savoir-faire, post-visit Atelier Care. */
body[data-page="bridal"] .bridal-note-inner{display:grid;grid-template-columns:minmax(0,1.2fr) auto;gap:clamp(28px,5vw,72px);align-items:end;text-align:left;padding:clamp(28px,5vw,52px)}
body[data-page="bridal"] .bridal-note-inner .button-row{justify-content:flex-end;align-items:center;margin:0}
body[data-page="bridal"] .bridal-note-signals{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
body[data-page="bridal"] .bridal-note-signals span{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid rgba(42,36,30,.14);border-radius:999px;background:rgba(255,250,243,.55);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(41,34,28,.67)}
body[data-page="bridal"] .concierge-panel .concierge-brief article{background:linear-gradient(180deg,rgba(255,250,243,.86),rgba(245,239,232,.72))}
body[data-page="standards"] .standards-savoir-faire{padding-top:clamp(4rem,8vw,7.5rem);padding-bottom:clamp(4rem,8vw,7.5rem);background:linear-gradient(180deg,rgba(246,240,233,.35),rgba(255,250,243,.52))}
body[data-page="standards"] .standards-savoir-grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:clamp(36px,6vw,86px);align-items:center}
body[data-page="standards"] .standards-savoir-visual{margin:0}
body[data-page="standards"] .standards-savoir-visual img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:clamp(24px,3vw,38px);box-shadow:0 30px 74px rgba(47,37,29,.10)}
body[data-page="standards"] .standards-savoir-visual figcaption{margin-top:13px;font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.5;color:rgba(66,55,46,.58)}
body[data-page="standards"] .standards-savoir-steps{margin-top:30px;border-top:1px solid var(--line)}
body[data-page="standards"] .standards-savoir-steps article{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
body[data-page="standards"] .standards-savoir-steps span{padding-top:3px;font-family:var(--serif);font-size:16px;letter-spacing:.08em;color:var(--taupe)}
body[data-page="standards"] .standards-savoir-steps h3{margin:0 0 5px;font-family:var(--serif);font-size:clamp(22px,2.2vw,30px);font-weight:500}
body[data-page="standards"] .standards-savoir-steps p{margin:0;color:var(--muted);line-height:1.7}
body[data-page="atelier-care"] .atelier-care-hero{padding-top:clamp(3.5rem,7vw,7rem);padding-bottom:clamp(4rem,8vw,7rem)}
body[data-page="atelier-care"] .atelier-care-hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr);gap:clamp(38px,7vw,100px);align-items:center}
body[data-page="atelier-care"] .atelier-care-visual{margin:0}
body[data-page="atelier-care"] .atelier-care-visual img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:clamp(26px,3vw,40px);box-shadow:0 34px 82px rgba(47,37,29,.11)}
body[data-page="atelier-care"] .atelier-care-habits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
body[data-page="atelier-care"] .atelier-care-habits article{padding:28px 26px 30px 0}
body[data-page="atelier-care"] .atelier-care-habits article+article{padding-left:26px;border-left:1px solid var(--line)}
body[data-page="atelier-care"] .atelier-care-habits span{display:block;margin-bottom:24px;font-family:var(--serif);letter-spacing:.08em;color:var(--taupe)}
body[data-page="atelier-care"] .atelier-care-habits h3,body[data-page="atelier-care"] .atelier-care-change-grid h3{margin:0 0 9px;font-family:var(--serif);font-size:clamp(23px,2.2vw,31px);font-weight:500}
body[data-page="atelier-care"] .atelier-care-habits p,body[data-page="atelier-care"] .atelier-care-change-grid p{margin:0;color:var(--muted);line-height:1.72}
body[data-page="atelier-care"] .atelier-care-change{background:linear-gradient(180deg,rgba(245,239,232,.46),rgba(255,250,243,.18))}
body[data-page="atelier-care"] .atelier-care-change-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px}
body[data-page="atelier-care"] .atelier-care-change-grid article{padding:28px;border:1px solid rgba(42,36,30,.12);border-radius:24px;background:rgba(255,250,243,.66)}
body[data-page="atelier-care"] .atelier-care-return .panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;padding:clamp(28px,5vw,50px)}
body[data-page="atelier-care"] .atelier-care-return .button-row{justify-content:flex-end;margin:0}
@media(max-width:900px){body[data-page="bridal"] .bridal-note-inner,body[data-page="atelier-care"] .atelier-care-return .panel{grid-template-columns:1fr;align-items:start}body[data-page="bridal"] .bridal-note-inner .button-row,body[data-page="atelier-care"] .atelier-care-return .button-row{justify-content:flex-start}body[data-page="standards"] .standards-savoir-grid,body[data-page="atelier-care"] .atelier-care-hero-grid{grid-template-columns:1fr}body[data-page="standards"] .standards-savoir-visual,body[data-page="atelier-care"] .atelier-care-visual{max-width:620px}body[data-page="atelier-care"] .atelier-care-habits,body[data-page="atelier-care"] .atelier-care-change-grid{grid-template-columns:1fr}body[data-page="atelier-care"] .atelier-care-habits article{padding:24px 0}body[data-page="atelier-care"] .atelier-care-habits article+article{padding-left:0;border-left:0;border-top:1px solid var(--line)}}
@media(max-width:620px){body[data-page="bridal"] .bridal-note-inner{padding:24px 20px}body[data-page="bridal"] .bridal-note-signals{gap:6px}body[data-page="bridal"] .bridal-note-signals span{font-size:9px;padding:6px 10px}body[data-page="standards"] .standards-savoir-steps article{grid-template-columns:34px 1fr;gap:12px}body[data-page="atelier-care"] .atelier-care-change-grid article{padding:22px;border-radius:20px}}
