/* Final component rules, after the legacy exports. Shared by both domains. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.sites-form-privacy a,.form-help a{text-decoration:underline;text-underline-offset:3px}
body .ui-arrow{display:inline-block;width:20px;height:20px;min-width:20px;flex:0 0 20px;vertical-align:middle;fill:none;stroke:currentColor}
.availability-dot:has(.ui-arrow),.hero-actions>a>span:has(.ui-arrow),.sites-text-link>span:has(.ui-arrow){display:inline-flex;align-items:center;justify-content:center;flex:none}
.notebook-scroll-hint .ui-arrow{width:14px;height:14px;min-width:14px;flex-basis:14px}
.blueprint-example-button .ui-arrow{width:12px;height:12px;min-width:12px;flex-basis:12px}
.sites-includes li::before{content:"";width:13px;height:13px;top:4px;background:var(--strato-orange);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 17 10-10M7 7h10v10' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
body .quote-arrows .ui-icon-button{border-radius:50%;color:#fff;background:#171717;flex:none}
.quote-arrows{flex:none}
body .quote-dots button{min-width:44px;min-height:44px}
.mobile-nav{max-height:calc(100dvh - 100px - env(safe-area-inset-top));overflow-y:auto;overscroll-behavior:contain}
.mobile-nav a{min-height:48px}

/* Tablet navigation changes before the links and proposal button collide. */
@media(min-width:768px) and (max-width:1023px){
 .site-header .desktop-nav,.site-header .proposal-button{display:none}
 body .site-header .menu-toggle{display:grid;margin-left:auto}
 .notebook-story,.notebook-story.is-static{height:auto;min-height:0;padding:24px 0 48px}
 .notebook-sticky,.notebook-story.is-static .notebook-sticky{position:relative;top:auto;height:auto;min-height:0;padding:16px 0 0;gap:24px}
 .notebook-caption{position:relative;top:auto;opacity:1!important;margin:0 32px}
 .notebook-scroll-hint{display:none}
 .notebook-video-window{width:min(100%,1100px)}
 .notebook-proof{position:relative;top:auto;right:auto;width:min(540px,calc(100% - 64px));opacity:1;transform:none;filter:none}
 .proof-metrics{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}
 .proof-metric+.proof-metric{margin:0;padding:0 0 0 24px;border-top:0;border-left:1px solid #ffffff1f}
 .proof-footnote{display:none}
 .page-home .st-card,.page-home .st-card:last-child{position:relative;top:auto!important;height:auto;min-height:0;margin-bottom:32px;transform:none!important;filter:none!important}
 .page-home .st-card:last-child{margin-bottom:0}
 .page-home .st-card-content{height:auto;grid-template-columns:minmax(0,1fr);gap:28px;padding:32px}
 .page-home .st-left{height:auto}
 .page-home .st-right{height:auto;aspect-ratio:auto;gap:16px}
 .page-home .st-img-wrapper{flex:auto;aspect-ratio:16/9}
 .page-home .st-img-fade{display:none}
 .page-home .st-cta{position:relative;left:auto;bottom:auto;align-self:flex-start}
 .sites-form-field input,.sites-form-field select,.sites-form-field textarea{font-size:16px}
}

@media(max-width:767px){
 :root{--mobile-gutter:clamp(20px,5.2vw,32px);--mobile-section:64px}
 html{scroll-padding-top:100px}
 body{overflow-wrap:break-word}
 .site-header.site-header,.site-header.site-header.is-scrolled{width:calc(100% - 24px);background:rgba(20,20,20,.92);border-color:#ffffff30}
 .site-header .header-inner{height:64px;padding:0 12px 0 17px}
 .site-header .brand img{width:125px;height:34px}
 .site-header .mobile-nav{padding:10px 10px 14px}
 .site-header .mobile-nav a{font-size:16px;padding:13px 14px}
 body .site-header .menu-toggle{width:44px;height:44px;align-content:center;gap:6px;padding:10px}
 .site-header .menu-toggle span{margin:0;width:22px}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .strato-hero,.sites-hero{padding:124px var(--mobile-gutter) 36px}
 .hero-copy{transform:none;filter:none;opacity:1}
 .motion-ready [data-motion]{transform:none;filter:none;transition:opacity .35s ease;transition-delay:0ms}
 .motion-ready .hero-copy [data-motion]{opacity:1}
 .strato-hero h1,.sites-hero h1{font-size:clamp(34px,8.6vw,54px);line-height:1.14;letter-spacing:-.045em}
 .hero-eyebrow,.sites-hero .hero-eyebrow{font-size:11px;line-height:1.5;letter-spacing:0;padding:8px 12px;margin-bottom:24px;max-width:100%}
 .hero-eyebrow>span{flex:none}
 .hero-description,.sites-hero .hero-description{font-size:16px;line-height:1.75;max-width:480px;margin-top:24px;color:#c5c5c5;text-wrap:pretty}
 .hero-actions,.sites-hero .hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-top:28px;max-width:420px}
 body .hero-actions>a,.sites-hero .hero-actions>a{width:100%;justify-content:space-between;min-height:52px;padding:15px 18px;font-size:15px;line-height:1.5;text-align:left;gap:14px}
 .hero-proof,.sites-hero .hero-proof{gap:12px;margin-top:24px;flex-wrap:wrap}
 .hero-proof img,.sites-hero .hero-proof img{width:100px;height:38px}
 .hero-proof p,.sites-hero .hero-proof p{font-size:12px;line-height:1.6}
 .sites-hero-price{font-size:13px;line-height:1.6;gap:4px 8px;margin-top:20px}
 .sites-hero-price strong{font-size:15px}

 /* The complete open notebook is immediately readable; no long empty scroll runway. */
 .notebook-story,.notebook-story.is-static{height:auto;min-height:0;padding:16px 0 40px}
 .notebook-sticky,.notebook-story.is-static .notebook-sticky{position:relative;top:auto;height:auto;min-height:0;gap:24px;padding:16px 0 0}
 .notebook-caption{position:relative;top:auto;opacity:1!important;margin:0 var(--mobile-gutter)}
 .notebook-kicker{font-size:10px;line-height:1.6;letter-spacing:.13em}
 .notebook-caption p,.page-sites .notebook-caption p{max-width:100%;font-size:clamp(25px,6.6vw,34px);line-height:1.25;margin:8px 0 0;letter-spacing:-.04em}
 .notebook-scroll-hint{display:none}
 .notebook-proof{width:calc(100% - var(--mobile-gutter)*2);max-width:480px;opacity:1;transform:none;filter:none;padding:22px}
 .proof-eyebrow{font-size:10px;line-height:1.6;margin-bottom:18px}
 .proof-metrics{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
 .proof-number{font-size:44px}
 .proof-metric>span,.page-sites .notebook-proof .proof-metric>span{font-size:13px;line-height:1.5}
 .proof-title{font-size:19px;line-height:1.3}
 .proof-metric+.proof-metric{padding-left:16px}
 .brands-ribbon{padding:30px 0 36px}
 .brands-ribbon>p{font-size:10px;line-height:1.6;letter-spacing:.1em}
 body .ui-button{min-height:50px;font-size:15px;line-height:1.5;padding:14px 18px;max-width:100%;white-space:normal;text-align:center}
 .ui-button .strato-button-content-wrapper{align-items:center;gap:12px}

 /* Reset both layers of the boxed CMS export, including inherited gap variables. */
 .page-home .strato-267>.strato-element:is(.strato-element-7df58c4,.strato-element-46c10b2,.strato-element-72a673e4,.strato-element-49b4117,.strato-element-339d320){width:100%;max-width:none;margin:0;padding:var(--mobile-section) var(--mobile-gutter);--gap:0px;--row-gap:0px;--column-gap:0px}
 .page-home .strato-267>.strato-element>.e-con-inner{width:100%;max-width:100%;min-width:0;padding:0;--gap:0px;--row-gap:0px;--column-gap:0px}
 .page-home .strato-267 :is(.strato-element-eb8b6af,.strato-element-c808d84,.strato-element-bbe5e95,.strato-element-a645b2d,.strato-element-a653989,.strato-element-52d2faa){padding:0;margin:0;min-height:0}
 .page-home .strato-267 :is(.strato-element-e4e4573,.strato-element-662bf7a3,.strato-element-3405ba2c,.strato-element-81a8072,.strato-element-e71d99d,.strato-element-affa35c){padding:0;margin:0}
 .page-home .strato-267 .strato-element-eb8b6af>.e-con-inner{gap:14px}
 .page-home .premium-problems-section,.page-home .stacked-services-section,.page-home .st-portfolio-section{padding:0}
 .page-home .pps-container,.page-home .st-container,.page-home .st-port-container{padding:0;width:100%;max-width:100%}
 .page-home .pps-title{font-size:clamp(28px,7.4vw,40px);line-height:1.22;letter-spacing:-.04em;margin:0 0 32px}
 .page-home .pps-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .page-home .pps-card{padding:28px 24px;border-radius:22px}
 .page-home .pps-card-title{font-size:24px;line-height:1.25;letter-spacing:-.03em}
 .page-home .pps-card-desc{font-size:15px;line-height:1.75;color:#626268}
 .page-home .pps-cta-card .pps-card-desc{color:#626268}
 .page-home .strato-267 :is(.strato-element-3405ba2c,.strato-element-6e8f9a0,.strato-element-936142b) .strato-heading-title{font-size:clamp(32px,8vw,44px);line-height:1.18;letter-spacing:-.045em}
 .page-home .strato-267 :is(.strato-element-662bf7a3,.strato-element-e4e4573,.strato-element-66133ba) .strato-heading-title{font-size:11px;line-height:1.6;letter-spacing:.12em}
 .page-home #servicos>.e-con-inner,.page-home #portfolio>.e-con-inner{gap:32px}
 .page-home .st-card,.page-home .st-card:last-child{position:relative;top:auto!important;height:auto;min-height:0;margin:0 0 24px;transform:none!important;filter:none!important}
 .page-home .st-card:last-child{margin-bottom:0}
 .page-home .st-card-content{grid-template-columns:minmax(0,1fr);gap:26px;padding:26px 22px;border-radius:24px;height:auto;min-height:0}
 .page-home .st-left{height:auto;min-width:0}
 .page-home .st-tag{margin-bottom:18px}
 .page-home .st-title{font-size:clamp(27px,7vw,36px);line-height:1.18;margin-bottom:18px}
 .page-home .st-desc{font-size:15px;line-height:1.75;font-weight:400;color:#626268;max-width:100%}
 .page-home .st-right{height:auto;min-height:0;aspect-ratio:auto;gap:16px}
 .page-home .st-img-wrapper{flex:auto;aspect-ratio:4/3}
 .page-home .st-img-fade{display:none}
 .page-home .st-cta{position:relative;left:auto;bottom:auto;width:100%;justify-content:space-between}
 .page-home .st-main-project{grid-template-columns:minmax(0,1fr);padding:12px;gap:8px;margin-bottom:24px}
 .page-home .st-main-media{height:auto;aspect-ratio:4/3;min-width:0}
 .page-home .st-main-content{padding:20px 10px 12px;min-width:0}
 .page-home .st-main-name{font-size:38px;line-height:1.2;margin:12px 0 18px}
 .page-home .st-main-desc{font-size:15px;line-height:1.75;font-weight:400;color:#626268;margin-bottom:24px}
 .page-home .st-port-tags{gap:8px;margin-bottom:24px}
 .page-home .st-port-tags span{font-size:12px;padding:7px 11px}
 .page-home .st-btn-main{gap:12px;justify-content:space-between}
 .page-home .st-sub-projects{grid-template-columns:minmax(0,1fr);gap:20px}
 .page-home .st-sub-media{aspect-ratio:1/1}
 .page-home .st-sub-info{left:22px;right:22px;bottom:22px;padding:18px}
 .page-home .strato-267 .strato-element-49b4117>.e-con-inner{gap:32px}
 .page-home .strato-267 .strato-element-71ff900{padding:0;gap:18px}
 .page-home .strato-267 .strato-element-f7bc47b{font-size:16px;line-height:1.8}
 .page-home .strato-element-f7bc47b p{margin:0 0 18px}
 .page-home .strato-element-f7bc47b p:last-child{margin-bottom:0}
 .page-home .strato-element-f7bc47b br{display:none}
 .page-home .strato-267 :is(.strato-element-affa35c,.strato-element-e9ca7c0){border:0;background:none;backdrop-filter:none;padding:0}
 .page-home .fw-step{padding:28px 24px}
 .page-home .fw-desc{font-size:15px;line-height:1.75}
 .page-home .fw-title{font-size:23px;line-height:1.3}
 .page-home .fw-header{margin-bottom:22px}
 .page-home .strato-267 .strato-element.strato-element-fda9bfa{width:calc(100% - var(--mobile-gutter)*2);margin:0 auto 64px;padding:32px 24px}
 .page-home .strato-267 .strato-element-fda9bfa>.e-con-inner{flex-direction:column;align-items:stretch;gap:28px}
 .page-home .strato-267 :is(.strato-element-b0a7ac9,.strato-element-8151c8a){width:100%;--width:100%;padding:0;gap:20px}
 .page-home .strato-267 .strato-element-81a8072 .strato-heading-title{font-size:clamp(28px,7.3vw,38px);line-height:1.22;letter-spacing:-.04em}
 .page-home .strato-267 .strato-element-e71d99d{width:100%;max-width:100%;font-size:16px;line-height:1.75;margin:0}
 .page-home .strato-element-e71d99d p{margin:0}

 .quote-deck{padding:64px 0 44px;scroll-margin-top:0}
 .quote-heading,.quote-bottom{width:calc(100% - var(--mobile-gutter)*2)}
 .quote-heading,.page-sites .quote-heading{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:24px}
 .quote-heading p{font-size:11px;line-height:1.6}
 .quote-heading h2,.page-sites .quote-heading h2{font-size:clamp(32px,8vw,44px);line-height:1.18;max-width:100%}
 .quote-arrows{gap:12px;align-self:flex-end}
 .quote-card,.quote-deck.is-deck-ready .quote-card{width:calc(100vw - var(--mobile-gutter)*2);max-width:440px;min-height:0;padding:28px 24px}
 .quote-card blockquote{font-size:16px;line-height:1.65;letter-spacing:-.015em;padding-bottom:28px}
 .quote-card-top{font-size:12px}
 .quote-author-name{font-size:14px;line-height:1.5}
 .quote-author-job{font-size:12px;line-height:1.5}
 .quote-counter{font-size:12px}
 .quote-bottom{margin-top:0}
 .page-home .strato-267 .strato-element.strato-element-424fc196{padding:64px var(--mobile-gutter);margin:0}
 .page-home .strato-267 .strato-element.strato-element-030d0b3{padding:30px 24px;gap:24px}
 .page-home .strato-267 .strato-element-fa80d13 .strato-heading-title{font-size:38px;line-height:1.2}
 .page-home .faq-item summary{font-size:16px;line-height:1.6;padding:20px 0;gap:16px}
 .page-home .faq-answer{font-size:15px;line-height:1.8;padding:0 0 24px}
 .page-home .strato-267 .strato-element.strato-element-ce19261{margin:0;padding:0 var(--mobile-gutter) 64px}
 .page-home .strato-267 .strato-element-420a751b .strato-heading-title{font-size:clamp(32px,8vw,44px);line-height:1.2}

 /* Landing: readable copy and metadata, with room for full-width actions. */
 .sites-wrap{width:calc(100% - var(--mobile-gutter)*2);min-width:0}
 .sites-section{padding:64px 0}
 .sites-section h2,.sites-investment h2,.sites-conversation h2{font-size:clamp(30px,7.8vw,44px);line-height:1.22;letter-spacing:-.045em}
 .sites-section-head{margin-bottom:32px}
 .sites-section-head>p:last-child:not(.sites-eyebrow),.sites-faq-grid>div:first-child>p:last-child{font-size:16px;line-height:1.8;margin-top:22px}
 .sites-eyebrow{font-size:11px;line-height:1.65;letter-spacing:.1em;margin-bottom:16px}
 .sites-head-split{gap:0}
 .sites-experience{gap:32px}
 .sites-path-label{font-size:11px;line-height:1.65}
 .sites-path-step summary{font-size:18px;line-height:1.5;gap:10px;grid-template-columns:24px minmax(0,1fr) 18px}
 .sites-path-step summary>span{font-size:12px}
 .sites-path-step>p{margin-left:34px;font-size:15px;line-height:1.8}
 .sites-text-link{font-size:15px;line-height:1.6;min-height:48px;gap:12px;max-width:100%}
 .sites-text-link>span{flex:none}
 .sites-blueprint figcaption{font-size:12px;line-height:1.7}
 .sites-delivery{gap:28px 22px;margin-top:40px;padding-top:32px}
 .sites-delivery>div{min-width:0}
 .sites-delivery>div>span{font-size:11px;line-height:1.6;letter-spacing:.02em}
 .sites-delivery h3{font-size:18px;line-height:1.35}
 .sites-delivery p{font-size:15px;line-height:1.75;color:#626268}
 .sites-investment,.sites-conversation{padding:64px 0}
 .sites-offer-grid,.sites-conversation-grid{gap:32px;grid-template-columns:minmax(0,1fr)}
 .sites-offer-copy>p:not(.sites-eyebrow){font-size:16px;line-height:1.8}
 .sites-offer-copy .sites-offer-note{font-size:14px!important;line-height:1.75;color:#aaa!important}
 .sites-price-card{padding:28px 24px;min-width:0}
 .sites-pill,.sites-price-index{font-size:11px;line-height:1.6}
 .sites-price-card h3{font-size:28px;line-height:1.25}
 .sites-price-label{font-size:13px}
 .sites-price{font-size:clamp(60px,18vw,82px)}
 .sites-includes li{font-size:15px;line-height:1.65;padding-left:22px;margin-bottom:14px}
 .sites-price-card .ui-button{font-size:15px;gap:12px;padding-inline:16px;text-align:left}
 .sites-price-fine,.sites-other-note{font-size:13px;line-height:1.8}
 .sites-process-list>li{padding:28px 24px}
 .sites-process-list>li>span{font-size:12px;margin-bottom:18px}
 .sites-process-list h3{font-size:23px;line-height:1.3}
 .sites-process-list p,.sites-other-card>p{font-size:16px;line-height:1.8;color:#626268}
 .page-sites .quote-heading .sites-quotes-context{font-size:15px;line-height:1.75;max-width:100%;margin-top:18px}
 .sites-other-card{padding:28px 24px;min-width:0}
 .sites-other-top>span{font-size:11px;line-height:1.6;letter-spacing:.04em}
 .sites-other-card h3{font-size:28px;line-height:1.25}
 .sites-faq{padding-top:0}
 .sites-faq-grid{grid-template-columns:minmax(0,1fr);gap:28px}
 .sites-faq-grid>div:last-child{padding:10px 24px}
 .sites-faq-item summary{font-size:16px;line-height:1.6;gap:16px;padding:21px 0}
 .sites-faq-item p{font-size:15px;line-height:1.8}
 .sites-conversation-copy>p:not(.sites-eyebrow){font-size:16px;line-height:1.8}
 .sites-person strong{font-size:15px}
 .sites-person span,.sites-conversation-email{font-size:13px;line-height:1.7}
 .sites-project-form{padding:28px 24px;min-width:0}
 .sites-form-kicker,.sites-form-field label{font-size:15px;line-height:1.6}
 .sites-form-field label>span{font-size:12px;color:#aaa}
 .sites-form-field input,.sites-form-field select,.sites-form-field textarea{font-size:16px;line-height:1.5;min-height:52px}
 .sites-form-privacy,.sites-form-status,.sites-form-direct,.sites-form-field .field-error{font-size:13px;line-height:1.75}
 .sites-form-direct{min-height:44px;padding-block:12px}
 .sites-project-form>.ui-button{justify-content:space-between;gap:12px;text-align:left}
 .sites-mobile-cta{bottom:calc(12px + env(safe-area-inset-bottom));gap:12px;padding:12px 12px 12px 16px}
 .sites-mobile-cta>div>span{font-size:11px}
 .sites-mobile-cta>div>strong{font-size:21px;line-height:1.2}
 .sites-mobile-cta .ui-button{font-size:14px;min-height:48px;padding:12px 14px;gap:10px}
 .page-sites .site-footer{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
 .site-footer.site-footer{padding-inline:var(--mobile-gutter)}
 .footer-root .e-con-inner{max-width:100%;min-width:0}
 .footer-root a,.site-footer a{overflow-wrap:anywhere}
 .contact-page input:not([type=checkbox]),.contact-page textarea{font-size:16px}
}
@media(max-width:359px){
 :root{--mobile-gutter:18px}
 .strato-hero h1,.sites-hero h1{font-size:32px}
 .sites-delivery{grid-template-columns:minmax(0,1fr)}
 .sites-price-card,.sites-project-form,.sites-other-card{padding:26px 20px}
 .sites-price-top{gap:8px}
 .sites-price-index{font-size:10px}
 .sites-mobile-cta{left:10px;right:10px;padding-left:12px;gap:8px}
 .sites-mobile-cta .ui-button{font-size:13px;padding-inline:12px}
 .proof-title{font-size:17px}
}
