/* BLIV light editorial theme: white, ink and quiet section dividers. */
:root{--paper:#fff;--ink:#171717;--line:#17171725;--accent:#171717}
body,.subpage{background:#fff;color:#171717}
header.site-header,header.site-header.is-scrolled,header.site-header.is-scrolled.is-compact{background:rgba(255,255,255,.96);color:#171717;border:1px solid #e8e8e8;box-shadow:none;backdrop-filter:blur(16px)}
.site-header .brand-wordmark,.subpage .site-header .brand-wordmark,.process-page .site-header .brand-wordmark,.contact-page .site-header .brand-wordmark{filter:invert(1)!important}
.site-header .header-left,.site-header .header-right,.subpage .site-header{color:#171717!important}
.site-menu{background:#fff;color:#171717}
.hero-track,.timeless-full,.timeless-full-track{background:#fff}
.hero-track .hero{background:#fff;color:#171717;padding:110px 7vw 60px;align-items:center}
.hero .scroll-media{left:52%;top:16%;right:6vw;bottom:12%;border-radius:32px}
.hero:after{display:none}
main .hero .cover-copy{width:42%;margin-left:0!important;margin-right:auto!important;text-align:left!important}
main .hero .cover-copy h1,main .hero .cover-copy p{margin-inline:0!important;text-align:left!important}
main .hero h1{font-size:clamp(34px,3.7vw,56px)!important;line-height:1.3!important;letter-spacing:-.045em!important}
.hero .cover-copy>p{color:#595959;max-width:440px!important;margin-top:22px}
.hero-promises{justify-content:flex-start!important;color:#595959;margin-top:20px;gap:18px}
.hero-promises span:before{background:#171717}
.hero .btn{margin-top:28px;background:#171717;color:#fff}
.eyebrow.section-badge,.fields-heading .eyebrow.section-badge,.faq-heading .eyebrow.section-badge{background:transparent;color:#666;border:0;padding:0;letter-spacing:.12em;font-weight:500}
.services.services-fields,.standards.worries,.page-intro,.about-services{background:#fff}
.standards.worries{background:#f7f7f7}
.worries-grid h3,.fields-options .field-panel .field-examples,.about-service-grid .field-examples{color:#171717}
.worries-grid article{border-top:1px solid #d9d9d9;padding-top:24px}
.timeless-full-gallery.gallery-parallax{background:#f7f7f7}
.timeless-full-stage{background:#fff;color:#171717;align-items:flex-start;padding-top:100px}
.timeless-full-stage .scroll-media{top:43%;bottom:0}
.timeless-full-stage:after{display:none}
.timeless-full-stage .cover-copy p{color:#595959}
#process,#process .process-list{background:#fff;color:#171717}
#process .cover{background:#f7f7f7;color:#171717;min-height:520px}
#process .cover>img{left:52%;width:48%;opacity:1}
#process .cover:after{display:none}
main #process .cover-copy{width:43%;margin-left:0!important;text-align:left!important}
main #process .cover-copy p,main #process .cover-copy h2{text-align:left!important;margin-inline:0!important}
#process .cover-copy>p{color:#595959}
#process .process-list article{border-color:#dedede}
#process .process-list p{color:#595959}
#process .step-number{color:#171717}
.process-tags button{color:#171717;border-color:#bdbdbd;background:#fff}
.process-tags button[aria-pressed=true]{background:#171717;color:#fff;border-color:#171717}
.process-optional{color:#666;border-color:#ccc}
.process-detail-link{border-color:#999}
.faq.faq-categories{background:#f7f7f7;color:#171717}
.faq-questions p,.faq-heading>p{color:#595959}
#brief.contact{background:#fff;color:#171717}
#brief .contact-copy>p,#brief label,.region-fields legend{color:#595959}
#brief .contact-copy>.notice,#brief .form-delivery-note,#brief #delivery-status{color:#666}
#brief input,#brief select,#brief textarea{background:#fafafa;border-color:#d5d5d5;color:#171717;color-scheme:light}
#brief input::placeholder,#brief textarea::placeholder{color:#767676}
#brief .btn,main .btn,.floating{background:#171717;color:#fff;border-color:#171717}
#brief #result{background:#f7f7f7;color:#333;border-color:#ddd}
.process-chapter:nth-of-type(3),.process-end{background:#f7f7f7}
#bliv-site-footer{background:#f7f7f7;color:#444;border-top:1px solid #e5e5e5}
#bliv-site-footer .bliv-footer-heading,#bliv-site-footer .bliv-footer-company-name,#bliv-site-footer .bliv-footer-label{color:#171717}
#bliv-site-footer .bliv-footer-description,#bliv-site-footer .bliv-footer-list,#bliv-site-footer .bliv-footer-link-light{color:#666}
:focus-visible,main .btn:focus-visible{outline:2px solid #171717;outline-offset:5px}
@media(max-width:760px){
.hero-track .hero{padding:100px 6vw 30px;align-items:flex-start}
main .hero .cover-copy{width:100%;max-width:none!important;text-align:center!important}
main .hero .cover-copy h1,main .hero .cover-copy p{text-align:center!important;margin-inline:auto!important}
main .hero h1{font-size:32px!important}
.hero .cover-copy>p{margin-top:16px;font-size:15px!important;max-width:340px!important}
.hero .scroll-media{left:6vw;right:6vw;top:57%;bottom:24px}
.hero-promises{justify-content:center!important;margin-top:14px}
.hero .btn{margin-top:14px;padding:11px 20px}
.timeless-full-stage{padding:90px 6vw 30px;min-height:700px}
.timeless-full-stage .scroll-media{top:44%}
#process .cover{padding:85px 6vw 300px;min-height:680px}
#process .cover>img{left:0;top:auto;bottom:0;width:100%;height:270px}
main #process .cover-copy{width:100%;text-align:center!important}
main #process .cover-copy p,main #process .cover-copy h2{text-align:center!important;margin-inline:auto!important}
}

/* Refine spacing and contrast across both the landing and service pages. */
.timeless-full-stage .scroll-media{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 16%,#000 80%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 16%,#000 80%,transparent 100%)}
#process .process-tags{justify-content:flex-start}
#process .process-list h3,#process .process-list .step-number{color:#171717}
#process .process-detail-items{color:#595959}
#process .process-detail-items li{border-color:#dedede}
#process .process-detail-items li:before{color:#767676}
#process .process-tags button:focus-visible{outline-color:#171717}
body:not(.subpage) #brief.contact,.contact-page #brief.contact{background:#f7f7f7;color:#171717}
#brief.contact .contact-slogan{color:#171717}
#brief.contact .contact-copy p,#brief.contact label,#brief.contact legend,#brief.contact .form-consent summary,#brief.contact .form-consent p,#brief.contact .form-delivery-note,#brief.contact #delivery-status{color:#595959;opacity:1}
#brief.contact input,#brief.contact select,#brief.contact textarea{background:#fff;color:#171717;border-color:#ccc;color-scheme:light}
#brief.contact input:focus,#brief.contact select:focus,#brief.contact textarea:focus{outline:2px solid #171717;outline-offset:2px}
#brief.contact input[type=checkbox]{accent-color:#171717}
#brief.contact .btn{background:#171717;color:#fff;border:1px solid #171717}
#brief.contact .btn:hover{background:#fff;color:#171717}
@media(max-width:760px){
.hero-track .hero{padding:110px 7vw 65px;align-items:center;background:#272727;color:#fff}
.hero .scroll-media{inset:0;border-radius:0}
.hero:after{display:block;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.5) 48%,rgba(0,0,0,.55));pointer-events:none}
main .hero .cover-copy{position:relative;z-index:2;width:100%;text-align:center!important}
.hero .cover-copy>p,.hero .hero-promises,.hero .eyebrow.section-badge{color:#fff}
.hero-promises span:before{background:#fff}
.hero .btn{border-color:#fff}
.hero .btn:focus-visible{outline-color:#fff}
.worries-grid article:first-child{padding-top:24px}
#process .process-tags{justify-content:center}
}

#brief.contact .privacy-summary{background:#fff;color:#595959;border:1px solid #dedede;border-radius:12px}
#brief.contact .privacy-summary dl,#brief.contact .privacy-summary dd{color:#595959}
#brief.contact .privacy-summary dt,#brief.contact .privacy-policy-link{color:#171717}
#brief.contact .privacy-summary dl>div{border-color:#e5e5e5}

/* Shared FAQ-width content frame and supplied BLIV symbols. */
:root{--content-width:min(1240px,86vw);--content-gutter:max(7vw,calc((100vw - 1240px)/2));--section-title-size:36px}
header.site-header,header.site-header.is-compact{max-width:1240px;width:var(--content-width)}
.site-header .brand-wordmark.brand-header-symbol{width:72px;height:42px;filter:none!important;object-fit:contain}
.story-symbol{display:block;width:145px;height:auto;margin:0 auto 26px}
.fields-stage,.standards.worries,.faq.faq-categories,#brief.contact,.about-services,.process-chapter,.page-end,.process-end{padding-left:var(--content-gutter);padding-right:var(--content-gutter)}
.fields-layout,.worries-grid,.faq-groups,.about-service-grid{width:100%;max-width:1240px;margin-inline:auto}
.worries-grid article:first-child{padding-left:0}
.worries-grid article:last-child{padding-right:0}
.hero-track .hero,#process .cover,.timeless-full-stage,#process .process-list{padding-left:var(--content-gutter);padding-right:var(--content-gutter)}
.hero .scroll-media{left:calc(var(--content-gutter) + var(--content-width)*.38);right:var(--content-gutter)}
main .hero .cover-copy{width:34%;max-width:420px!important}
main .hero h1{font-size:var(--section-title-size)!important;line-height:1.35!important;letter-spacing:-1px!important}
main .hero .cover-copy>p{max-width:none!important}
.timeless-full,.timeless-full-track,.timeless-full-track.is-static,.timeless-full-gallery.gallery-parallax,#process,#process .cover{background:#fff}
#process .cover>img{left:calc(var(--content-gutter) + var(--content-width)*.52);right:var(--content-gutter);width:calc(var(--content-width)*.48)}
#bliv-site-footer .bliv-footer-inner{padding-left:var(--content-gutter);padding-right:var(--content-gutter)}
@media(max-width:760px){
:root{--content-width:88vw;--content-gutter:6vw;--section-title-size:30px}
header.site-header,header.site-header.is-compact{width:calc(100% - 24px)}
.site-header .brand-wordmark.brand-header-symbol{width:60px;height:35px}
.story-symbol{width:120px;margin-bottom:24px}
.hero .scroll-media{inset:0}
main .hero .cover-copy{width:100%;max-width:none!important}
.worries-grid article{padding-left:0;padding-right:0}
#process .cover>img{left:0;right:0;width:100%}
}

.page-intro{max-width:none;padding-left:var(--content-gutter);padding-right:var(--content-gutter)}
.timeless-full-gallery.gallery-parallax{width:var(--content-width);max-width:1240px;margin-inline:auto}

/* Compact symbols, a shared image frame, and a focused consultation page. */
:root{--brand-symbol-width:57.6px;--brand-symbol-height:33.6px}
.site-header .brand-wordmark.brand-header-symbol,.story-symbol{width:var(--brand-symbol-width);height:var(--brand-symbol-height);object-fit:contain}
.story-symbol{margin:0 auto 26px}
@media(min-width:761px){
#process .cover{min-height:620px;padding-block:100px}
#process .cover>img{left:calc(var(--content-gutter) + var(--content-width)*.38);right:var(--content-gutter);top:60px;bottom:60px;width:calc(var(--content-width)*.62);height:calc(100% - 120px);border-radius:32px;object-fit:cover}
main #process .cover-copy{width:34%;max-width:420px!important}
}
body:not(.subpage) #brief.consultation-cta{display:flex;min-height:0;padding-block:110px;background:#f7f7f7;align-items:center;justify-content:center}
#brief.consultation-cta .contact-copy{max-width:720px;text-align:center!important}
.consultation-actions{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:32px}
.consultation-actions .btn,.contact-phone-button{min-height:52px;display:inline-flex;gap:20px;align-items:center;justify-content:center;padding:14px 26px;border-radius:28px}
.contact-phone-button{border:1px solid #bbb;background:transparent;color:#171717;gap:12px}
.contact-phone-button:hover{background:#fff;border-color:#171717}
.consultation-page-intro{background:#f7f7f7;padding:150px var(--content-gutter) 65px}
.consultation-page-intro h1{font-size:36px;line-height:1.35;letter-spacing:-1px;margin-bottom:16px}
.consultation-page-intro p{color:#595959}
.contact-page #brief.contact{background:#fff;min-height:0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6vw;padding-top:80px;padding-bottom:100px;align-items:start}
main .contact-page .contact-copy,.contact-page main #brief .contact-copy{text-align:left!important}
.contact-page #brief .contact-copy h2,.contact-page #brief .contact-copy p{text-align:left!important;margin-inline:0!important}
.contact-page #brief .contact-copy>p{margin-top:22px;max-width:440px}
.contact-info{margin-top:32px}
.contact-info-row{display:flex;align-items:center;gap:18px;border-top:1px solid #ddd;padding:22px 0}
.contact-info-row:last-child{border-bottom:1px solid #ddd}
.contact-info-row small{display:block;color:#767676;font-size:12px;margin-bottom:3px}
.contact-info-row strong{display:block;color:#171717;font-weight:600;font-size:16px;overflow-wrap:anywhere}
.contact-info-row svg{flex:none}
.consultation-guide{margin-top:28px;padding:24px;border:1px solid #ddd}
.consultation-guide h3{font-size:16px!important;margin-bottom:16px!important}
.consultation-guide ul{list-style:none;margin:0;padding:0;color:#595959;font-size:14px;line-height:1.8}
.consultation-guide li{display:flex;gap:10px;margin-top:8px}
.consultation-guide li:before{content:'✓';color:#171717;flex:none}
.consultation-form-card{min-width:0;border:1px solid #ddd;padding:32px}
main h2.form-card-title{font-size:22px!important;line-height:1.4!important;margin-bottom:8px!important}
.form-card-description{color:#666;margin-bottom:28px!important;font-size:14px!important}
#brief .consultation-form-card form{gap:20px 16px}
#brief .consultation-form-card .btn{min-height:52px}
@media(max-width:760px){
:root{--brand-symbol-width:48px;--brand-symbol-height:28px}
#process .cover{padding-bottom:310px}
#process .cover>img{left:var(--content-gutter);right:var(--content-gutter);width:var(--content-width);height:250px;bottom:24px;border-radius:24px}
body:not(.subpage) #brief.consultation-cta{padding-block:75px}
.consultation-actions{flex-direction:column;align-items:stretch;width:100%;max-width:320px;margin-inline:auto;gap:12px}
.consultation-page-intro{padding-top:115px;padding-bottom:40px}
.consultation-page-intro h1{font-size:30px}
.contact-page #brief.contact{grid-template-columns:1fr;gap:40px;padding-top:45px;padding-bottom:60px}
.consultation-form-card{padding:24px 18px}
.contact-page #brief .contact-copy>p{max-width:none}
.consultation-guide{padding:22px}
}

/* Quieter desktop scale; mobile keeps its established sizing. */
@media(min-width:761px){
:root{--section-title-size:32px}
main h1,main h2,main .contact-slogan,main .hero h1,.consultation-page-intro h1{font-size:32px!important}
main p,.cover p,.fields-heading p,.field-panel p,.process-list p,.phase-row p,.phase-heading>p,.hero .cover-copy>p,.standards-heading>p,.timeless-full-stage .cover-copy>p,.process .cover-copy>p,.faq-heading>p,.contact-copy>p:not(.notice){font-size:15px!important}
main h2.form-card-title{font-size:22px!important}
.form-card-description{font-size:14px!important}
.hero .scroll-media{top:21.4%;bottom:17.4%}
#process .cover>img{top:97.5px;bottom:97.5px;height:calc(100% - 195px)}
.consultation-page-intro{padding-top:125px;padding-bottom:40px}
.contact-page #brief.contact{padding-top:60px;padding-bottom:80px}
.consultation-form-card{padding:24px}
}
/* Gallery bands extend edge to edge while text keeps the common gutter. */
.timeless-full-gallery.gallery-parallax{width:100%;max-width:none;margin-inline:0}
@media(max-width:760px){
.fields-visual{width:100%;align-self:stretch}
.fields-options{width:100%;align-self:stretch}
main .fields-options .field-toggle,.field-option:not(.is-active) .field-toggle,.field-panel p,.field-panel .field-examples{text-align:left}
.contact-page #brief.contact>.contact-copy,.contact-page #brief.contact>.consultation-form-card{width:100%;min-width:0;margin-inline:0;box-sizing:border-box}
.contact-page #brief.contact>.contact-copy{padding:24px 18px;border:1px solid #ddd}
.contact-page #brief .contact-copy>p{max-width:none}
.consultation-guide{padding:20px 0 0;border:0;border-top:1px solid #ddd}
}

/* Borderless at the top, translucent frosted header after scrolling. */
header.site-header:not(.is-scrolled){border-color:transparent}
header.site-header.is-scrolled,header.site-header.is-scrolled.is-compact{background:rgba(255,255,255,.2);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}

/* Keep the header borderless in every scroll state. */
header.site-header,header.site-header.is-scrolled,header.site-header.is-scrolled.is-compact{border-color:transparent}
/* Dedicated process page uses natural mobile flow so copy cannot overlap media. */
@media(max-width:760px){
.process-page #process .page-process-cover{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:28px;min-height:0!important;padding:110px var(--content-gutter) 32px!important}
.process-page #process .page-process-cover>.cover-copy{position:relative;order:0;width:100%;max-width:none!important;margin:0!important;text-align:center!important}
.process-page #process .page-process-cover>img{position:static;order:1;inset:auto;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:24px;flex:none}
.process-page #process .page-process-cover h1{text-align:center;margin-inline:auto!important}
.process-page #process .page-process-cover .process-tags{justify-content:center;margin-top:24px!important}
}
