/* Stable tab geometry and restrained, warm light at interaction points. */
.format-copy[data-tabs-ready] .format-panel-stack{display:grid;margin-bottom:20px}
.format-copy[data-tabs-ready] .format-panel{grid-area:1/1;margin:0}
.format-copy[data-tabs-ready] .format-panel[hidden]{display:block!important;visibility:hidden;pointer-events:none}
.format-art-enhanced>div+div{margin-top:0}
.button{box-shadow:0 5px 18px rgba(95,26,34,.13);transition:background 180ms ease,box-shadow 220ms ease,transform 180ms ease}
.button:hover{box-shadow:0 7px 24px rgba(95,26,34,.23),0 0 30px rgba(192,134,128,.18)}
.button:focus-visible{box-shadow:0 0 0 5px rgba(236,207,199,.72),0 0 26px rgba(95,26,34,.18)}
.button:active{box-shadow:0 2px 8px rgba(95,26,34,.16)}
.nav-indicator{box-shadow:0 0 11px rgba(139,63,72,.28)}
.desktop-nav .nav-cta{transition:box-shadow 200ms ease,border-color 200ms ease,background 200ms ease}
.desktop-nav .nav-cta:hover{background:#f2e5de;box-shadow:0 0 20px rgba(170,104,104,.12)}
.format-tabs a[aria-selected="true"]{box-shadow:0 7px 16px -10px rgba(95,26,34,.55)}
.hero-art{box-shadow:0 12px 45px -25px rgba(95,26,34,.26),0 0 0 1px rgba(145,87,80,.08)}
.service-preview-art{transition:transform 250ms var(--ease),box-shadow 250ms ease;box-shadow:0 0 0 1px rgba(245,224,216,.15)}
.service-card:hover .service-preview-art{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(245,224,216,.45),0 0 24px rgba(236,207,199,.13)}
.background-control{transition:background 180ms ease,box-shadow 180ms ease}
.background-control:hover{box-shadow:0 0 18px rgba(149,87,86,.13)}
@media(prefers-reduced-motion:reduce){html:not([data-motion="full"]) .service-card:hover .service-preview-art {transform:none}}
html[data-motion="reduce"] .service-card:hover .service-preview-art{transform:none}
.rates-feature{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,5vw,72px);align-items:center;padding-bottom:0}
.rates-feature>.consultation-portrait{width:100%;max-width:480px;margin:0}
.rates-feature-copy h2{margin-bottom:24px}
.payment-policy{padding:16px 18px;border-left:3px solid var(--accent);background:#f2e4e0;color:var(--ink)}.payment-methods{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;list-style:none;padding:0;margin:20px 0 26px}.payment-methods li{display:flex;flex:1 1 78px;max-width:130px;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:14px 7px;background:var(--paper);border:1px solid var(--line);color:var(--accent);font-size:.75rem;font-weight:600;line-height:1.5;box-shadow:0 4px 14px #5f1a2205}.payment-method-icon{display:flex;align-items:center;justify-content:center;height:36px;width:100%;min-width:0}.payment-method-icon img{display:block;width:28px;height:28px;object-fit:contain}.payment-methods li:first-child .payment-method-icon img{width:68px;height:40px;max-width:100%}
.rates-feature+.rate-menu{margin-top:48px}
@media(max-width:800px){.rates-feature{grid-template-columns:1fr;gap:28px}.rates-feature>.consultation-portrait{max-width:420px}.rates-feature+.rate-menu{margin-top:36px}}
.hero-art.portrait-frame,.portrait-frame-about{position:relative;isolation:isolate;min-width:0;padding:24px;margin:0;border:1px solid #bfa396;border-radius:3px;background:linear-gradient(135deg,#f8f3ec,#e7d4cb 55%,#f4eae1);box-shadow:0 0 0 5px rgba(247,243,238,.65),0 0 42px rgba(154,74,88,.21),0 18px 38px rgba(95,26,34,.16);transition:box-shadow 220ms ease}
.hero-art.portrait-frame:hover,.portrait-frame-about:hover{box-shadow:0 0 0 5px rgba(247,243,238,.7),0 0 52px rgba(154,74,88,.29),0 18px 40px rgba(95,26,34,.2)}
.portrait-frame>.portrait-photo{display:block;border-radius:0;outline:1px solid rgba(95,26,34,.26);outline-offset:4px}
.portrait-frame-about>.portrait-photo{height:auto;max-height:660px;aspect-ratio:.86;object-fit:cover;object-position:50% 12%}
.hero-art.portrait-frame figcaption{padding:20px 0 0;min-height:84px;background:transparent;color:#5f1a22}
.hero-art.portrait-frame figcaption strong,.hero-art.portrait-frame figcaption .monogram,.portrait-frame-emblem .monogram{color:#5f1a22}
.hero-art.portrait-frame figcaption>span:not(.hero-art-icon){color:#5f1a22}
.portrait-frame-caption{display:flex;align-items:center;gap:14px;margin-top:22px;color:#5f1a22;font-size:.76rem;font-weight:500;line-height:1.6}
.portrait-frame-emblem{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #c9b0a4;border-radius:50%;background:rgba(247,243,238,.72);box-shadow:0 0 18px rgba(154,74,88,.14)}
.portrait-frame-emblem svg{width:26px;height:26px}
.portrait-frame-corner{position:absolute;width:58px;height:58px;z-index:2;color:#76343e;pointer-events:none}
.portrait-frame-corner svg{display:block;width:100%;height:100%;stroke:currentColor;stroke-width:1.2}
.portrait-frame-corner .frame-diamond{fill:#76343e;stroke:none}
.portrait-frame-corner circle{fill:#a97172;stroke:none}
.portrait-frame-corner.top-left{top:0;left:0}
.portrait-frame-corner.top-right{top:0;right:0;transform:scaleX(-1)}
.portrait-frame-corner.bottom-left{bottom:0;left:0;transform:scaleY(-1)}
.portrait-frame-corner.bottom-right{bottom:0;right:0;transform:scale(-1)}
@media(max-width:700px){.hero-art.portrait-frame,.portrait-frame-about{padding:18px;box-shadow:0 0 0 4px rgba(247,243,238,.65),0 0 30px rgba(154,74,88,.2),0 12px 30px rgba(95,26,34,.13)}.portrait-frame-corner{width:44px;height:44px}.portrait-frame-about>.portrait-photo{aspect-ratio:.85}.hero-art.portrait-frame figcaption{padding-top:18px}.portrait-frame-caption{font-size:.7rem;gap:12px;margin-top:18px}}
@media(prefers-reduced-motion:reduce){html:not([data-motion="full"]) .portrait-frame {transition:none}}
html[data-motion="reduce"] .portrait-frame{transition:none}
@media(max-width:700px){
 .nav-wrap{gap:12px}
 .site-header .brand-wordmark{width:clamp(200px,calc(100vw - 145px),245px)}
 .menu-toggle{font-size:.75rem;padding:9px 8px;gap:8px}
 .background-control{position:static;width:fit-content;margin:16px auto;display:block}
}
@media(max-width:359px){
 .site-header .brand-wordmark{width:210px}
 .menu-toggle{width:44px;min-width:44px;justify-content:center;padding:9px;gap:0}
 .menu-toggle>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
}

/* A stable reading surface keeps the long services page easy to navigate. */
.service-index{display:block;padding:16px 18px 18px;border:1px solid #d5c7bd;background:var(--paper);position:relative}.service-index-meta{display:flex;justify-content:space-between;gap:20px;margin-bottom:12px;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.service-index-links{display:flex;flex-wrap:wrap;gap:6px}.service-index-links a{min-height:44px;display:flex;align-items:center;font-size:.72rem;font-weight:500;background:var(--surface);padding:11px 13px;transition:box-shadow var(--fast)}.service-index-links a[aria-current="location"]{background:var(--accent);color:var(--paper);box-shadow:0 3px 14px #5f1a2218}.service-index[data-enhanced]{position:sticky;top:var(--service-top,96px);z-index:20;box-shadow:0 9px 22px #342a2808}.service-index[data-enhanced]:after{content:"";position:absolute;height:2px;background:var(--accent);left:0;right:0;bottom:0;transform:scaleX(var(--service-progress,.142857));transform-origin:left;transition:transform var(--control) var(--ease)}.service-detail{scroll-margin-top:var(--service-clearance,120px)}
@media(max-width:900px){.service-index[data-enhanced] .service-index-links{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#5f1a22 #f1ece6;padding-bottom:5px}.service-index-links a{flex-shrink:0}.service-index{padding:12px 14px 9px}.service-index-meta{margin-bottom:8px;font-size:.58rem}.service-index-links a{font-size:.7rem}}
/* Opaque surfaces give navigation text a predictable contrast over moving art. */
.site-header{background:var(--paper);backdrop-filter:none}.background-control{background:var(--paper)}

.rate-print-link{display:inline-flex;align-items:center;gap:14px;margin:0 0 28px;font-size:.78rem;min-height:44px}.rate-print-link svg{width:20px;height:20px}
.faq-contact-links{display:flex;flex-wrap:wrap;gap:4px 22px;margin:10px 0 14px}.faq-contact-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);font-size:.82rem;font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.faq-contact-links a:hover{color:var(--ink)}
.hero-notes{flex-wrap:wrap;row-gap:10px}#certification-title{scroll-margin-top:190px}
.professional-credential{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;padding:25px;margin-top:30px;border:1px solid #d5c7bd;border-left:3px solid var(--accent);background:var(--paper);box-shadow:0 8px 26px #5f1a2208}.credential-abbreviation{align-self:start;padding:13px 10px;background:var(--accent);color:var(--paper);font-size:.73rem;font-weight:600;letter-spacing:.04em}.professional-credential .eyebrow{margin:0 0 7px;color:var(--muted);font-size:.57rem}.professional-credential h3{font:600 1.8rem/1.1 Editorial,Georgia,serif;color:var(--accent);margin:0 0 10px}.professional-credential p{font-size:.84rem;line-height:1.7;margin:0 0 9px}.professional-credential .credential-issuer{font-size:.74rem;color:var(--muted)}.professional-credential a{display:inline-flex;align-items:center;min-height:44px;font-size:.75rem;color:var(--accent);text-decoration:underline;text-underline-offset:4px}@media(max-width:500px){.professional-credential{grid-template-columns:1fr;gap:18px;padding:22px}.credential-abbreviation{justify-self:start}.professional-credential h3{font-size:1.7rem}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.service-detail:nth-child(3n) .service-illustration{background:var(--mist)}.service-illustration>span{color:var(--accent)}

.service-index-meta>span{background:var(--paper)}.service-illustration>span{background:var(--paper)}

.service-detail h2[tabindex="-1"]:focus{outline:none}

.phone-contact h2{font-size:clamp(2.5rem,4vw,3.6rem);line-height:1.05;margin:22px 0 25px}.phone-contact>p{max-width:56ch;font-size:.92rem;line-height:1.9}.phone-contact .phone-consultation{margin:18px 0 32px;font-size:.95rem;min-height:52px}.phone-preparation{padding:26px 0;border-block:1px solid var(--line);margin-bottom:26px}.phone-preparation h3{font-size:1.7rem;margin:0 0 18px}.phone-preparation ul{padding-left:20px;font-size:.86rem;line-height:2.1;color:var(--muted)}.phone-contact>p.fine{font-size:.76rem}.phone-contact .text-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:.85rem}.phone-contact .text-link svg{width:20px;height:20px}@media(max-width:600px){.phone-contact .phone-consultation{width:100%;justify-content:space-between}.phone-contact h2{font-size:2.6rem}.phone-contact>p{font-size:.88rem}}
