:root{--ink:#241c2b;--violet:#302537;--cream:#fff8ed;--paper:#f6f1e9;--orange:#ff7752;--orange-dark:#b9381d;--mint:#cbe3d8;--gold:#ffca86;--gray:#635c65;--line:#d9d0cb;--white:#fff;--radius:22px;--max:1240px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:94px}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,Arial,"Helvetica Neue",sans-serif;line-height:1.62;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}a{color:inherit}button{font:inherit}p{margin:0 0 1em}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #eb9139;outline-offset:4px}
.skip{position:fixed;top:-90px;left:12px;z-index:100;background:#fff;color:#111;padding:10px 22px;border-radius:5px}.skip:focus{top:10px}
.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,248,237,.97);backdrop-filter:blur(16px);border-bottom:1px solid #e9dcd2}
.header-inner{min-height:76px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;line-height:1.06;letter-spacing:-.045em;font-size:21px;flex-shrink:0}
.brand-mark{display:grid;place-items:center;width:45px;height:45px;background:var(--ink);color:var(--gold);border-radius:13px;font-size:17px;letter-spacing:-.12em;transform:rotate(-8deg)}.brand-text small{display:block;color:var(--gray);font-size:10px;letter-spacing:.19em;font-weight:800;margin-top:5px}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:18px;flex:1}.desktop-nav a{font-size:13px;text-decoration:none;white-space:nowrap;font-weight:750}.desktop-nav a:hover{color:var(--orange-dark)}
.header-phone{background:var(--ink);border-radius:12px;padding:10px 16px;color:#fff;text-decoration:none;font-weight:800;font-size:14px;white-space:nowrap;min-height:44px;display:flex;align-items:center;gap:8px}.header-phone:hover{background:#49334f}
.menu-toggle{display:none;background:var(--ink);color:white;border:0;border-radius:12px;padding:10px 14px;min-height:44px;cursor:pointer}
.hero{background:var(--ink);color:#fff;position:relative;isolation:isolate;overflow:hidden}
.hero::before{content:"";pointer-events:none;position:absolute;inset:0;background:radial-gradient(circle at 85% 15%,rgba(246,118,84,.17),transparent 42%);z-index:-1}
.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:38px;min-height:610px;padding-top:52px;padding-bottom:52px}
.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:850;letter-spacing:.2em;text-transform:uppercase;color:#c1adcc;margin:0 0 24px}
.eyebrow::before{content:"";width:25px;height:5px;border-radius:9px;background:var(--orange)}
.hero h1{font-size:clamp(57px,7.4vw,110px);line-height:.96;letter-spacing:-.075em;font-weight:850;margin:0 0 25px;max-width:690px}
.hero h1 em{font-family:Georgia,serif;font-size:.91em;font-weight:400;font-style:italic;color:var(--orange);letter-spacing:-.06em}
.hero-sub{font-size:clamp(21px,2.3vw,32px);font-weight:700;line-height:1.17;letter-spacing:-.03em;max-width:545px;margin-bottom:19px}
.hero-lede{font-size:16px;color:#e2d8e5;max-width:540px;margin-bottom:26px}
.hero-meta{display:flex;gap:20px;align-items:center;flex-wrap:wrap;color:#e8d9e5;font-size:13px;margin-top:21px}
.hero-meta b{color:#ffd5b9}.hero-meta span::before{content:"●";color:var(--orange);font-size:9px;margin-right:8px}
.cta-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;border-radius:12px;padding:13px 22px;text-decoration:none;font-weight:850;line-height:1.2;white-space:normal;text-align:center;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--orange);color:#251622}.button-primary:hover{background:#ff9676}.button-secondary{border:1px solid rgba(255,255,255,.55);color:#fff}.button-secondary:hover{background:rgba(255,255,255,.1)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#47374e}.button-light{background:#fff;color:var(--ink)}
.call-number{margin-top:14px;font-size:23px;font-weight:850;letter-spacing:.025em;color:#fff;text-decoration:none;display:inline-block}.call-number:hover{color:var(--gold)}
.hero-art{position:relative;aspect-ratio:1.16;align-self:center}.hero-art img{height:100%;width:100%;object-fit:cover;border-radius:28px 100px 28px 28px;box-shadow:0 30px 80px #100b16}
.art-badge{position:absolute;right:-14px;bottom:16px;border-radius:18px;background:var(--mint);color:#1d3028;padding:17px 20px;transform:rotate(4deg);box-shadow:0 12px 22px #18121f66;font-weight:900;font-size:13px;line-height:1.5}
.hero-bottom{border-top:1px solid #594c5d;display:flex;justify-content:space-between;gap:16px;padding-top:16px;padding-bottom:18px;color:#c8b8ce;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-bottom a{text-decoration:none;color:#ffb79c}
.section{padding:92px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:31px}.overline{display:block;font-size:12px;font-weight:850;letter-spacing:.18em;color:var(--orange-dark);text-transform:uppercase;margin-bottom:10px}.section h2{font-size:clamp(32px,4.4vw,57px);line-height:1.06;letter-spacing:-.055em;margin:0 0 14px;max-width:920px}.section-head-description{color:var(--gray);font-size:16px;max-width:550px}
.quick-services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{min-height:246px;padding:28px;border-radius:16px;background:#fff;border:1px solid #e5dad3;display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden;transition:transform .18s,border-color .18s}.service-card:hover{transform:translateY(-4px);border-color:var(--orange)}.service-card::after{content:"↗";position:absolute;right:25px;top:23px;font-size:29px;color:var(--orange-dark)}.service-card .num{color:var(--orange-dark);font-size:11px;font-weight:850;letter-spacing:.15em}.service-card h3{font-size:25px;line-height:1.06;letter-spacing:-.045em;margin:0;padding-right:34px}.service-card p{font-size:14px;color:#555058;margin:0;flex:1}.service-card a{font-weight:800;text-decoration:none;font-size:13px;display:inline-flex;min-height:44px;align-items:center;gap:8px}.service-card a:hover{text-decoration:underline}
.spotlight{padding:0;background:#fff}.feature-panel{display:grid;grid-template-columns:1fr 1.15fr;min-height:435px;border-bottom:1px solid var(--line)}.feature-panel:nth-child(even) .feature-photo{order:2}.feature-panel:nth-child(even) .feature-copy{order:1}.feature-photo{overflow:hidden;position:relative;background:#ead4c7}.feature-photo img{width:100%;height:100%;object-fit:cover;max-height:760px;min-height:445px}.feature-photo .photo-tag{position:absolute;top:22px;left:23px;background:#fff9;border-radius:9px;padding:7px 11px;font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:#291d2d}.feature-copy{padding:55px clamp(27px,6vw,90px);align-self:center}.feature-copy .feature-name{font-size:clamp(32px,4vw,52px);line-height:1.05;letter-spacing:-.045em;margin:0 0 20px}.feature-copy .feature-lede{font-size:18px;font-weight:700;line-height:1.43}.feature-copy p{color:#4b454d}.feature-copy ul{padding-left:18px;margin:24px 0;list-style:square}.feature-copy li{margin-bottom:9px;font-size:14px;line-height:1.55}.feature-copy .note{border-left:4px solid var(--orange);padding:10px 0 10px 16px;background:#fff7f2;font-size:13px}.feature-inline-action{font-size:13px;font-weight:850;color:var(--orange-dark);text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center;margin-top:10px}
.feature-panel:not(.with-image){background:#f9f3ea}.feature-panel:not(.with-image) .feature-graphic{min-height:410px;display:grid;place-items:center;background:var(--ink);color:#ffbf9f;position:relative;overflow:hidden}.feature-panel:not(.with-image) .feature-graphic::after{content:"";position:absolute;width:350px;height:350px;border:1px solid #fff4;border-radius:100%;transform:translate(80px,45px);box-shadow:0 0 0 62px #ffffff0d,0 0 0 125px #ffffff07}.feature-panel:not(.with-image) .feature-graphic b{font-family:Georgia,serif;font-size:clamp(85px,10vw,166px);font-style:italic;line-height:1;opacity:.9;position:relative;z-index:1;letter-spacing:-.08em}
.strip{background:var(--orange);color:var(--ink);padding:26px 0}.strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.strip p{margin:0;font-size:clamp(21px,2.6vw,32px);font-weight:900;line-height:1.17;letter-spacing:-.03em}.strip a{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border-radius:12px;padding:11px 17px;background:var(--ink);color:#fff;font-weight:850;text-decoration:none;white-space:nowrap}
.catalog{background:#e7e0dc}.catalog-header{display:grid;grid-template-columns:1.25fr .75fr;gap:36px;align-items:end}.catalog .section-head-description{font-size:16px;margin-bottom:14px}.brand-nav{display:flex;flex-wrap:wrap;gap:7px;margin-top:25px;margin-bottom:37px}.brand-nav a{border:1px solid #bdb1b5;padding:8px 12px;min-height:40px;background:#fff8;text-decoration:none;border-radius:9px;font-size:12px;font-weight:750}.brand-nav a:hover{background:var(--ink);color:#fff}
.brand-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.brand-entry{background:#fffaf5;border:1px solid #d5c9c3;border-radius:15px;padding:30px 30px 21px;overflow-wrap:anywhere}.brand-entry h3{font-size:33px;letter-spacing:-.055em;line-height:1.1;margin:0 0 10px}.brand-entry h4{margin:21px 0 6px;font-size:15px;line-height:1.35}.brand-entry .models{font-size:13px;font-weight:650;color:#4c4650;margin:10px 0 16px}.brand-entry .brand-intro{font-size:14px;line-height:1.6;font-weight:700}.brand-entry ul{padding-left:17px;font-size:13px;margin:14px 0;line-height:1.6}.brand-entry li{padding-left:3px;margin-bottom:7px}.brand-entry .brand-note{font-size:12px;color:#5e555c;background:#f5ebe5;padding:13px 14px;border-radius:9px;margin-top:18px}.brand-entry .brand-answer{font-size:13px;color:#403a42}.brand-entry .brand-call{font-size:12px;color:var(--orange-dark);font-weight:800;display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:3px}
.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.price-section{background:var(--ink);color:#fff}.price-section .overline{color:#ffb48f}.price-section .body-text{color:#e9dfea}.factor-list{display:grid;gap:10px}.factor{display:flex;align-items:flex-start;gap:16px;border-bottom:1px solid #66556d;padding:15px 0}.factor b{color:#ffb48f;font-size:13px;min-width:28px}.factor strong{font-size:16px}.factor p{margin:4px 0 0;font-size:13px;color:#d1c4d4}
.other{background:var(--cream)}.other-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.other-card{padding:25px;border:1px solid var(--line);border-radius:15px;background:#fff}.other-card h3{font-size:21px;letter-spacing:-.03em;line-height:1.2;margin:0 0 12px}.other-card p{font-size:14px;color:#564e55}
.safety{background:var(--mint)}.safety-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:29px}.safety-grid article{background:#fffafa;padding:27px;border-radius:14px}.safety-grid h3{font-size:22px;line-height:1.15;letter-spacing:-.035em}.safety-grid p{font-size:14px;color:#393c38}
.safety-footnote{margin-top:25px;max-width:950px}.guides{background:#fff}.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.guide{border:1px solid #e0d4ce;border-radius:14px;padding:25px;background:#fffaf5}.guide-number{font-size:11px;font-weight:900;letter-spacing:.13em;color:var(--orange-dark)}.guide h3{font-size:22px;line-height:1.2;letter-spacing:-.035em;margin:12px 0}.guide p{font-size:14px;line-height:1.71;color:#514952;margin:0}
.faq{background:var(--paper)}.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px}.faq-intro{position:sticky;top:115px;align-self:start}.faq-items{display:grid;gap:9px}.faq details{background:#fff;border:1px solid #e6d8d2;border-radius:12px;padding:0 20px}.faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:15px;font-weight:750;min-height:65px;padding:16px 0}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";font-size:27px;line-height:1;color:var(--orange-dark);flex-shrink:0}.faq details[open] summary::after{content:"−"}.faq details p{font-size:14px;color:#504a53;padding-bottom:16px;margin:0}.faq details a{color:#983c27}
.privacy{background:#fff;border-top:1px solid var(--line);padding:40px 0}.privacy h2{font-size:21px;margin:0 0 10px}.privacy p{max-width:1000px;font-size:13px;color:#635b62}
.footer{background:#1d1824;color:#e9dce8;padding:70px 0 112px}.footer a{color:inherit}.footer h2{font-size:clamp(33px,4.4vw,57px);line-height:1.05;letter-spacing:-.05em;margin:0 0 18px}.footer-contact{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-bottom:34px;border-bottom:1px solid #544657}.footer-call{display:inline-block;color:#ffbc9f!important;font-size:clamp(25px,4vw,42px);font-weight:850;text-decoration:none;margin:10px 0}.footer-lede{color:#cbbacb;font-size:14px}.footer-note{color:#bdaebe;font-size:13px;max-width:600px}.footer-details{padding-top:36px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px}.footer-details h3{font-size:14px;color:#ffab85;margin-top:0}.footer-details p,.footer-details address{font-size:13px;color:#d9cadb;font-style:normal}.footer .bottomline{border-top:1px solid #544657;margin-top:37px;padding-top:17px;display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#a995aa}
.sticky-call{display:none}section[id],article[id],div[id]{scroll-margin-top:95px}
@media(max-width:1120px){.desktop-nav{gap:11px}.desktop-nav a{font-size:12px}.header-inner{gap:14px}.header-phone{font-size:12px;padding:8px 10px}.feature-copy{padding:39px}.feature-copy li{font-size:13px}}
@media(max-width:900px){.desktop-nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--cream);padding:15px 24px 25px;box-shadow:0 13px 30px #251a2540;flex-direction:column;align-items:stretch;gap:0}.desktop-nav.is-open{display:flex}.desktop-nav a{font-size:15px;padding:13px 10px;border-bottom:1px solid var(--line)}.menu-toggle{display:block;margin-left:auto}.hero-grid{grid-template-columns:1fr;min-height:auto;gap:38px}.hero-art{max-width:740px;width:100%;aspect-ratio:1.7}.hero h1{font-size:clamp(60px,9vw,100px)}.service-grid{grid-template-columns:repeat(2,1fr)}.two-col{gap:32px}.faq-layout{grid-template-columns:1fr;gap:25px}.faq-intro{position:static}.footer-contact{grid-template-columns:1fr}.footer-details{grid-template-columns:1fr 1fr}}
@media(max-width:650px){html{scroll-padding-top:80px}.wrap{width:min(var(--max),calc(100% - 28px))}.header-inner{min-height:66px}.brand{font-size:18px}.brand-mark{width:40px;height:40px}.header-phone{display:none}.desktop-nav{top:66px}.hero-grid{padding-top:46px;padding-bottom:31px}.hero h1{font-size:clamp(55px,14vw,83px)}.hero-sub{font-size:22px}.hero-lede{font-size:15px}.hero-art{aspect-ratio:1.27}.hero-art img{border-radius:19px 75px 19px 19px}.art-badge{right:4px;bottom:-12px;padding:11px;font-size:11px}.hero-bottom{font-size:9px}.hero-bottom span:last-child{display:none}.section{padding:60px 0}.section h2{font-size:clamp(34px,10vw,48px)}.section-heading{display:block}.service-grid,.brand-columns,.guide-grid,.two-col,.other-grid,.safety-grid,.catalog-header{grid-template-columns:1fr}.service-card{min-height:215px;padding:23px}.feature-panel,.feature-panel:nth-child(even){display:flex;flex-direction:column}.feature-panel:nth-child(even) .feature-photo{order:0}.feature-panel:nth-child(even) .feature-copy{order:1}.feature-photo img{min-height:275px;max-height:330px}.feature-panel:not(.with-image) .feature-graphic{min-height:235px}.feature-copy{padding:35px 20px}.brand-entry{padding:24px 21px 16px}.brand-entry h3{font-size:29px}.strip .wrap{display:block}.strip a{margin-top:16px}.footer{padding-bottom:140px}.footer-details{grid-template-columns:1fr}.footer .bottomline{display:block}.sticky-call{display:flex;position:fixed;left:12px;right:12px;bottom:max(11px,env(safe-area-inset-bottom));min-height:54px;z-index:70;align-items:center;justify-content:center;gap:15px;text-align:center;background:var(--orange);color:#211425;border:2px solid #302332;border-radius:13px;box-shadow:0 6px 24px #150c1d55;font-size:17px;font-weight:900;text-decoration:none}.sticky-call small{font-size:12px;font-weight:800}.call-number{font-size:21px}.cta-row .button{width:100%;font-size:15px;min-height:51px}.hero-meta{gap:10px}.hero-meta span{width:100%}}
@media(max-width:360px){.brand-text small{font-size:9px}.hero h1{font-size:55px}.hero-art{aspect-ratio:1.15}.brand-nav a{font-size:11px}.service-card h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card{transition:none}}
