
/* Purelithanessia site navigation, legal pages and footer extensions. */
html { scroll-padding-top: 86px; }
html,body { width:100%; max-width:100%; margin:0; }
body { overflow-x:clip; }
:where(a,button,input,textarea,select):focus-visible { outline:2px solid var(--color-primary); outline-offset:3px; }
.site-header { position:sticky; top:0; z-index:4000; width:100%; background:rgba(255,252,248,.97); color:#22211f; border-bottom:1px solid #e7e3de; box-shadow:0 6px 30px rgba(34,33,31,.055); backdrop-filter:blur(18px); }
.site-header-inner {max-width:1320px;margin:auto;min-height:84px;padding:0 clamp(16px,3.8vw,54px);display:flex;align-items:center;justify-content:space-between;gap:clamp(14px,2vw,34px)}
.site-brand {text-decoration:none;display:flex;align-items:center;gap:9px;min-width:0;color:#26241f!important;font:500 clamp(17px,1.5vw,22px)/1.2 var(--font-family-heading);white-space:nowrap;letter-spacing:-.025em}
.site-brand-gem{color:#8b6e3a;display:flex;align-items:center;flex-shrink:0}
.site-nav-desktop {display:flex;gap:clamp(12px,1.4vw,24px);align-items:center;justify-content:center;flex-wrap:nowrap;margin-left:auto}
.site-nav-desktop a{color:#48443e;text-decoration:none;font:500 clamp(10px,.85vw,12px)/1.4 var(--font-family-body);letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;padding:30px 0;position:relative}
.site-nav-desktop a:hover,.site-nav-desktop a[aria-current=page]{color:#8b6e3a}
.site-nav-desktop a[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:25px;height:1px;background:#8b6e3a}
.site-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.site-header-cta,.site-mobile-cta{border:1px solid #8b6e3a;color:white!important;background:#8b6e3a;text-decoration:none;font:500 11px/1.3 var(--font-family-body);padding:14px 20px;border-radius:100px;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;transition:background .2s,color .2s}
.site-header-cta:hover,.site-mobile-cta:hover{color:#8b6e3a!important;background:transparent}
.site-menu-toggle{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:43px;height:43px;border:1px solid #b9aa96;border-radius:6px;background:transparent;cursor:pointer;color:#24211f}
.site-menu-toggle span{width:20px;height:1.6px;background:currentColor;transition:transform .2s,opacity .2s}
.site-header.menu-open .site-menu-toggle span:first-child{transform:translateY(6.6px) rotate(45deg)}
.site-header.menu-open .site-menu-toggle span:nth-child(2){opacity:0}
.site-header.menu-open .site-menu-toggle span:last-child{transform:translateY(-6.6px) rotate(-45deg)}
.site-mobile-menu[hidden]{display:none!important}
.site-mobile-menu{position:absolute;z-index:4001;top:100%;left:0;right:0;background:#fffcf8;border-top:1px solid #e7e3de;box-shadow:0 18px 30px #16120d25;max-height:calc(100dvh - 84px);overflow-y:auto}
.site-mobile-nav-inner{max-width:1320px;margin:auto;padding:15px 24px 26px;display:flex;flex-direction:column}
.site-mobile-nav-inner>a:not(.site-mobile-cta){font:500 19px/1.4 var(--font-family-heading);color:#292720;text-decoration:none;padding:11px 0;border-bottom:1px solid #e7e3de}
.site-mobile-nav-inner>a[aria-current=page]{color:#8b6e3a}
.site-mobile-cta{align-self:flex-start;margin-top:20px}
body.site-menu-is-open{overflow:hidden!important}
.site-main{display:flow-root;min-width:0}
.site-company-disclosure{border-top:1px solid #ffffff2a;border-bottom:1px solid #ffffff2a;padding:28px 0;margin:4px 0 14px;color:#eee8df}
.site-company-heading{font:500 12px/1.4 var(--font-family-body);letter-spacing:.14em;text-transform:uppercase;color:#d2b792;margin-bottom:16px}
.site-company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 25px}
.site-company-grid>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.site-company-grid strong{font:500 11px/1.4 var(--font-family-body);color:#d2b792;text-transform:uppercase;letter-spacing:.055em}
.site-company-grid span{font:400 12px/1.65 var(--font-family-body);overflow-wrap:anywhere;color:#f0ebe5}
.site-company-note{font-size:11px;opacity:.72;margin-top:15px;line-height:1.55}
.site-footer-brand{font:500 22px/1.3 var(--font-family-heading);color:white;text-decoration:none}
.site-footer-legal{display:flex;gap:12px 24px;flex-wrap:wrap;align-items:center}
.site-footer-legal a,.footer-nav-center a{color:#f3ede4!important;text-decoration:none!important;transition:color .2s}
.site-footer-legal a{font:500 12px/1.5 var(--font-family-body)}
.site-footer-legal a:hover,.footer-nav-center a:hover{color:#d2b792!important}
.site-footer-contact{display:block;text-decoration:none!important;color:inherit!important}
.site-footer-contact:hover{color:#d2b792!important}
.footer-root,.site-header{max-width:none}
.legal-main{width:100%;background:var(--color-surface);min-height:55vh;padding:clamp(44px,7vw,95px) clamp(20px,4vw,58px)}
.legal-container{max-width:1030px;margin:0 auto}
.legal-eyebrow{font:500 12px/1.4 var(--font-family-body);text-transform:uppercase;letter-spacing:.16em;color:var(--color-primary);margin:0 0 22px}
.legal-title{font:500 clamp(2.15rem,1.9rem + 1.3vw,3rem)/1.15 var(--font-family-heading);color:var(--color-on-surface);margin:0 0 24px}
.legal-intro{font-size:16px;color:var(--color-on-surface-secondary);line-height:1.8;max-width:850px;margin-bottom:30px}
.legal-main .site-company-disclosure{color:#22211f;border-color:#ded7ce;padding:22px 25px;margin:25px 0 40px;background:#ede6db}
.legal-main .site-company-heading,.legal-main .site-company-grid strong{color:#725826}
.legal-main .site-company-grid span{color:#272520}
.legal-main .site-company-note{color:#34302b;opacity:.8}
.legal-section{margin:0 0 30px;padding:0 0 27px;border-bottom:1px solid #e7e3de}
.legal-section h2{font:500 clamp(22px,2vw,29px)/1.25 var(--font-family-heading);margin:0 0 12px}
.legal-section p,.legal-section li{font:400 15px/1.8 var(--font-family-body);color:#4f4a43;margin:0 0 12px}
.legal-section ul{padding-left:24px;margin:10px 0}
.legal-section a,.legal-back{color:#765a2f;text-decoration:none;border-bottom:1px solid currentColor}
.legal-section a:visited,.legal-back:visited{color:#765a2f}
.legal-section a:hover,.legal-back:hover{color:#4d371a}
.legal-section a:active,.legal-back:active{color:#a67d38}
.legal-back{display:inline-block;padding:12px 0;margin-top:12px}
.contact-form-message{margin-top:12px;line-height:1.6;font-size:13px;color:#50422f}
#consultation-intake-form [aria-invalid=true]{outline:2px solid #ad443c}
@media(max-width:1170px){.site-nav-desktop{display:none}.site-menu-toggle{display:flex}.site-header-cta{display:flex}}
@media(max-width:767px){.site-header-inner{min-height:72px;padding-inline:16px}.site-brand{font-size:clamp(15px,4.15vw,20px)}.site-brand-gem svg{width:29px;height:29px}.site-header-cta{display:none}.site-mobile-menu{max-height:calc(100dvh - 72px)}.site-company-grid{grid-template-columns:1fr 1fr}.footer-utility-row{flex-wrap:wrap}.footer-inner{padding-inline:20px}.legal-main{padding:42px 19px}.legal-main .site-company-disclosure{padding:20px 17px}.legal-main .site-company-grid{grid-template-columns:1fr}.site-footer-legal{gap:10px 18px}}
@media(max-width:440px){.site-company-grid{grid-template-columns:1fr}.site-mobile-nav-inner{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){.site-menu-toggle span,.site-header-cta,.site-mobile-cta{transition:none}}

.site-editorial-seo{max-width:1050px;margin:25px auto 0;padding:0 22px;color:var(--color-on-surface-secondary);font:400 14px/1.75 var(--font-family-body)}
/* Box model parity for legal pages: original template components override main sizing. */
.legal-main { box-sizing: border-box !important; min-width: 0; }
.legal-main .legal-container { box-sizing: border-box; min-width: 0; width: 100%; }
@media (max-width: 440px) {
  .why-choose-action-btn,.contact-hero-action-btn { box-sizing: border-box; max-width: calc(100vw - 40px) !important; min-width: 0 !important; width: auto; white-space: normal !important; text-align: center; overflow-wrap: anywhere; }
  .why-choose-action-btn span,.contact-hero-action-btn span { white-space: normal; overflow-wrap: anywhere; }
}
