:root{color-scheme:dark;--bg:#161817;--surface:#202420;--text:#f4f5ed;--muted:#b6bdb4;--orange:#ef8928;--light-orange:#f9b16b;--line:#383e36}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--light-orange);outline-offset:6px}a:hover{color:var(--light-orange)}.wrap{max-width:1320px;width:calc(100% - 112px);margin:auto}.orange{color:var(--orange)}.wordmark{width:245px;height:auto;display:block}.skip{position:fixed;top:10px;left:10px;background:var(--orange);color:#111;padding:12px;z-index:10;transform:translateY(-180%)}.skip:focus{transform:none}header{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}nav{display:flex;align-items:center;gap:35px;font-size:14px}nav a{padding:10px 0}.nav-contact{border:1px solid #73796b;padding:9px 19px;border-radius:3px}.nav-contact span{margin-left:20px}.hero{display:grid;grid-template-columns:1.05fr 1fr;column-gap:34px;padding-top:80px}.eyebrow{font-family:monospace;font-size:12px;letter-spacing:2px;font-weight:500;color:var(--light-orange);margin:0 0 28px}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(42px,4.7vw,68px);line-height:1.08;letter-spacing:-2.8px;margin-bottom:14px;font-weight:600}.stay{font-size:32px;font-weight:400;color:var(--light-orange);letter-spacing:-.9px;margin-bottom:26px}.intro{font-size:21px;max-width:430px;line-height:1.55;margin-bottom:16px}.subintro{max-width:465px;color:var(--muted);font-size:16px;line-height:1.7}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.button{background:var(--orange);color:#171b15;display:inline-flex;gap:32px;padding:14px 22px;border-radius:3px;font-weight:600}.button:hover{background:var(--light-orange);color:#171b15}.quiet-link{font-size:14px;border-bottom:1px solid #797e72;padding:8px 0;display:inline-flex;gap:18px}.visual{position:relative;align-self:center;min-width:0;background:radial-gradient(ellipse at center,#343b2c55,transparent 70%)}.printer-scene{position:relative;margin-top:16px;width:100%;transform-origin:center}.printer-scene svg{display:block;width:100%;overflow:visible}.visual-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding:12px 8px;font-family:monospace;font-size:12px;letter-spacing:1px;color:#b3baa9}.visual-footer button{background:transparent;border:0;color:var(--muted);cursor:pointer;letter-spacing:0;font-size:12px;min-height:44px;padding:8px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;margin-top:66px;padding:22px 0;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.hero-bottom a{color:var(--text)}.services{padding-top:108px;padding-bottom:100px}.section-title{display:grid;grid-template-columns:1.15fr 1fr;column-gap:100px;margin-bottom:58px}.section-title .eyebrow{grid-column:1/-1}h2{font-size:clamp(34px,3.7vw,52px);font-weight:500;line-height:1.14;letter-spacing:-1.8px;margin-bottom:22px}.section-title>p:last-child{align-self:end;max-width:395px;color:var(--muted);margin-bottom:24px}.service-group{display:grid;grid-template-columns:1fr 2.1fr;border-top:1px solid var(--line);padding:32px 0 14px;gap:44px}.group-label h3{font-size:27px;line-height:1.25;letter-spacing:-.6px;font-weight:500;margin:14px 0}.group-label p{font-size:14px;color:var(--muted);max-width:220px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 38px;padding-bottom:28px}.service-grid article{position:relative;padding:0}h4{font-size:19px;font-weight:500;line-height:1.35;margin-bottom:12px}.service-grid p{font-size:15px;color:var(--muted);line-height:1.7;margin-bottom:0}.wide{grid-column:1/-1;max-width:640px}.contact{background:var(--orange);color:#191e17}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:73px;padding-bottom:72px}.contact .eyebrow{color:#343a29}.contact h2{font-size:clamp(48px,5.3vw,74px);letter-spacing:-3px}.contact p{max-width:440px;font-size:17px;line-height:1.6}.contact-links{align-self:center;min-width:0}.contact-links>a{display:grid;grid-template-columns:1fr auto;border-top:1px solid #885315;padding:20px 0}.contact-links>a span{font-size:13px;grid-column:1}.contact-links strong{font-size:clamp(19px,2.25vw,31px);font-weight:500;letter-spacing:-.8px;overflow-wrap:anywhere}.contact-links b{grid-column:2;grid-row:1/3;align-self:center;font-size:30px;font-weight:400}.contact-links a:hover{color:#171b15;text-decoration:underline}.contact-links p{font-size:14px;margin-top:23px}.about{padding-top:85px;padding-bottom:85px;display:grid;grid-template-columns:240px 1fr;gap:65px;align-items:center;max-width:1030px}.portrait-frame{width:240px;max-width:100%}.portrait-frame img{display:block;width:100%;height:auto}.about .eyebrow{margin-bottom:17px}.about h2{font-size:39px;margin-bottom:8px}.about p{font-size:16px;line-height:1.7;color:var(--muted);margin-bottom:12px}.about .about-lead{font-size:19px;color:var(--text)}.about .quiet-link{margin-top:8px}footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:30px 0;font-size:13px;color:var(--muted)}footer .wordmark{width:200px}footer p{margin:0}
@media(min-width:1600px){.hero{padding-top:95px}}@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{column-gap:20px;padding-top:60px}h1{font-size:49px}.actions{gap:16px}.quiet-link{font-size:13px}.section-title{gap:30px}.contact-inner{gap:50px}.service-group{gap:24px}.service-grid{gap:24px}.about{gap:40px}.visual-footer{letter-spacing:0}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}header{height:85px;gap:20px}.wordmark{width:185px}nav{gap:16px}nav>a:not(.nav-contact){display:none}.nav-contact{font-size:12px;padding:7px 10px;white-space:nowrap}.nav-contact span{margin-left:5px}.hero{grid-template-columns:1fr;padding-top:42px}.eyebrow{font-size:11px;letter-spacing:1.4px;margin-bottom:24px}h1{font-size:clamp(39px,9vw,62px);letter-spacing:-2px}.stay{font-size:29px;margin-bottom:21px}.intro{font-size:19px}.subintro{font-size:15px}.actions{margin-top:25px;gap:20px}.button{padding:12px 17px;gap:25px}.visual{width:min(100%,470px);margin:46px auto 0}.hero-bottom{margin-top:25px;padding:20px 0;gap:18px;font-size:12px}.hero-bottom a{text-align:right;max-width:120px}.hero-bottom>span{max-width:185px}.services{padding-top:65px;padding-bottom:45px}.section-title{display:block;margin-bottom:36px}.section-title>p:last-child{font-size:16px;max-width:100%}h2{font-size:36px}.service-group{grid-template-columns:1fr;gap:22px;padding-top:25px}.group-label h3{font-size:25px;margin:10px 0}.group-label h3 br{display:none}.group-label p{max-width:none;margin:0}.service-grid{gap:26px;grid-template-columns:1fr}.wide{grid-column:auto}.service-grid article{padding-left:0}.service-grid h4{font-size:19px}.contact-inner{grid-template-columns:1fr;padding-top:48px;padding-bottom:35px;gap:24px}.contact h2{font-size:53px}.contact-links strong{font-size:25px}.about{grid-template-columns:110px 1fr;gap:25px;padding-top:50px;padding-bottom:50px;align-items:start}.portrait-frame{width:110px}.about h2{font-size:29px}.about .eyebrow{font-size:10px}.about p{font-size:15px}.about .about-lead{font-size:17px}.about .quiet-link{font-size:13px}footer{flex-wrap:wrap;gap:22px;padding:25px 0}footer .wordmark{width:180px}footer p{order:3;width:100%;font-size:12px}footer a{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}#motion{display:none!important}}

/* Align About with the shared page gutter; span label through contact link. */
.about{max-width:1320px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);column-gap:48px;row-gap:0;align-items:stretch}
.about>.eyebrow{grid-column:2;margin-bottom:17px}
.about .portrait-frame{grid-column:1;grid-row:1 / 3;width:100%;max-width:none;position:relative;min-height:0}
.about .portrait-frame img{position:absolute;left:0;top:0;height:100%;width:auto;max-width:none}
.about-copy{grid-column:2;grid-row:2;display:flex;flex-direction:column;align-items:flex-start}
.about-copy .quiet-link{margin-bottom:0}
@media(max-width:1000px){
 .about{grid-template-columns:1fr;gap:0;max-width:1320px}
 .about>.eyebrow{grid-column:1;grid-row:1}
 .about .portrait-frame{grid-column:1;grid-row:2;width:min(360px,100%);margin:0 0 30px}
 .about .portrait-frame img{position:static;width:100%;height:auto}
 .about-copy{grid-column:1;grid-row:3}
}
@media(min-width:1001px){
 .about>.eyebrow,.about-copy{transform:translateX(var(--about-copy-shift,0px))}
}
@media(max-width:1000px){.about .portrait-frame{margin-bottom:15px}}
/* The provider handles field layout and automatic iframe height. */
.quote{padding-top:70px;padding-bottom:85px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:70px;align-items:start}
.quote-intro>p:not(.eyebrow){color:var(--muted);max-width:380px}
.quote-embed{min-width:0;padding:26px;background:#1b1e1b;border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:3px}
.quote-embed iframe{display:block;width:100%;border:0}
.quote-note{font-size:14px;color:var(--muted);line-height:1.6;margin:20px 0 0}
.quote-note a{text-decoration:underline;text-underline-offset:3px}
.quote-note a:hover{color:var(--light-orange)}
@media(max-width:850px){.quote{grid-template-columns:1fr;gap:26px;padding-top:45px;padding-bottom:50px}.quote-intro>p:not(.eyebrow){max-width:none}}
@media(max-width:500px){.quote-embed{padding:18px 14px}}

/* The full wordmark becomes the opening manufacturing surface. */
header{border-bottom:0}
.hero.hero-welcome{display:block;padding-top:30px}
.brand-print{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;appearance:none}
.brand-print:not(:disabled){cursor:pointer}
.print-stage{display:block;width:100%;height:auto;overflow:visible}
.welcome-content{max-width:820px;margin:0 auto;padding-top:43px;text-align:center}
.welcome-content .eyebrow{font-size:12px;line-height:1.65;letter-spacing:2px;font-weight:500;margin-bottom:19px}
.welcome-intro .intro,.welcome-intro .subintro{max-width:760px;margin-left:auto;margin-right:auto}
.welcome-intro .subintro{max-width:700px}
.welcome-intro .actions{justify-content:center;margin-top:23px}
@media(min-width:1600px){.hero.hero-welcome{padding-top:40px}}
@media(max-width:850px){.welcome-intro .intro{font-size:19px}}
@media(max-width:760px){.hero.hero-welcome{padding-top:25px}.welcome-content{padding-top:29px}.welcome-intro .intro{font-size:19px;line-height:1.6}}

@media(prefers-reduced-motion:no-preference){.brand-print:not([data-print-ready]) #print-wordmark{visibility:hidden}}

/* Service information stays in the HTML and shares the original brand. */
.welcome-content{max-width:950px}
.seo-hero-title{font-size:clamp(32px,3.4vw,48px);line-height:1.18;letter-spacing:-1.7px;max-width:850px;margin:0 auto 22px}
.service-grid .service-link{display:inline-block;margin-top:14px;color:var(--light-orange);font-size:14px;text-decoration:underline;text-underline-offset:4px}
.info-section{padding-top:68px;padding-bottom:68px;border-top:1px solid var(--line)}
.info-heading{max-width:700px;margin-bottom:30px}
.info-heading>p:not(.eyebrow){color:var(--muted)}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.info-grid h3{font-size:23px;font-weight:500;line-height:1.3;letter-spacing:-.4px;margin-bottom:13px}
.info-grid p{color:var(--muted);font-size:15px}
.text-link{color:var(--light-orange);text-decoration:underline;text-underline-offset:4px}
.breadcrumb{display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin:30px 0}
.breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.page-hero{padding-top:22px;padding-bottom:58px;max-width:930px}
.page-hero h1{font-size:clamp(36px,4.3vw,62px);line-height:1.12;letter-spacing:-2px}
.page-hero .page-lead{font-size:21px;line-height:1.6;max-width:800px;color:var(--muted)}
.page-hero .eyebrow{margin-bottom:20px}
.page-body{max-width:850px}
.page-section{padding:42px 0;border-top:1px solid var(--line)}
.page-section h2{font-size:clamp(29px,3vw,40px);letter-spacing:-1px}
.page-section h3{font-size:22px;font-weight:500;line-height:1.35;margin:27px 0 12px}
.page-section p,.page-section li{color:var(--muted)}
.page-section li{margin-bottom:10px}
.page-section ul{padding-left:22px}
.page-section .info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.page-section .info-grid h3{margin-top:0}
.project-note{border-left:3px solid var(--orange);padding:18px 23px;background:var(--surface);margin:24px 0}
.project-note p:last-child{margin-bottom:0}
.faq details{border-top:1px solid var(--line);padding:19px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-size:18px;line-height:1.4;padding-right:16px}
.faq summary:focus-visible{outline:3px solid var(--light-orange);outline-offset:5px}
.faq details p{margin:17px 0 0;color:var(--muted);max-width:790px}
.page-cta{padding:38px;background:var(--surface);border-top:3px solid var(--orange);margin:35px 0 70px}
.page-cta h2{font-size:32px}
.page-cta p{color:var(--muted)}
.page-cta .actions{margin-top:22px}
.related-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;list-style:none;padding:0!important}
.related-links a{color:var(--light-orange);text-decoration:underline;text-underline-offset:4px}
.guide-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.guide-card{padding:30px;border:1px solid var(--line);background:var(--surface)}
.guide-card h2{font-size:27px;line-height:1.25;letter-spacing:-.7px}
.guide-card p{color:var(--muted)}
.guide-byline{font-size:13px;color:var(--muted);margin:0 0 28px}
.table-scroll{overflow-x:auto;margin:25px 0;border:1px solid var(--line)}
.comparison-table{border-collapse:collapse;width:100%;min-width:640px;font-size:15px}
.comparison-table th,.comparison-table td{padding:17px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.comparison-table th{background:var(--surface);font-weight:500}
.comparison-table td{color:var(--muted)}
.comparison-table caption{text-align:left;padding:16px;font-size:14px;color:var(--muted)}
.site-footer{display:block}
.footer-main{display:flex;justify-content:space-between;gap:30px;padding-bottom:25px;flex-wrap:wrap}
.footer-services{display:flex;gap:13px 28px;flex-wrap:wrap;max-width:720px}
.footer-services a{text-decoration:underline;text-underline-offset:3px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px}
@media(max-width:760px){
 header{height:auto;min-height:100px;align-items:flex-start;flex-direction:column;gap:15px;padding-top:23px;padding-bottom:18px}
 header nav{display:flex;width:100%;gap:12px 20px;justify-content:space-between;flex-wrap:wrap;font-size:13px}
 nav>a:not(.nav-contact){display:block}
 .nav-contact{font-size:13px;padding:5px 10px}
 .hero.hero-welcome{padding-top:0}
 .seo-hero-title{font-size:32px;letter-spacing:-1px}
 .info-section{padding-top:45px;padding-bottom:45px}
 .info-grid,.page-section .info-grid,.guide-cards,.related-links{grid-template-columns:1fr;gap:24px}
 .breadcrumb{margin:25px 0}
 .page-hero{padding-top:10px;padding-bottom:35px}
 .page-hero h1{font-size:38px;letter-spacing:-1.3px}
 .page-hero .page-lead{font-size:18px}
 .page-section{padding:30px 0}
 .page-cta{padding:26px 22px;margin-bottom:45px}
 .page-cta h2{font-size:29px}
 .guide-card{padding:25px}
 .footer-bottom p{width:auto;order:0}
}
