/* Mobile layout overrides. Desktop composition stays in the existing stylesheets. */
.sc-mobile-nav { display:none; }
@media(max-width:1199px){
 body.sc-home .header-area-4 .header__nav,
 body.sc-home .header-area-4 .header__btn{display:none!important}
 body.sc-home .header-area-4__inner{height:72px;min-height:0;display:flex;justify-content:space-between;gap:0;padding:0;border:0}
 body.sc-home .header-area-4 .container{width:calc(100% - 40px);padding:0}
 body.sc-home .header-area-4 .header__logo{margin:0;flex:0 0 auto}
 body.sc-home .header-area-4 .header__logo a{display:block;line-height:0}
 body.sc-home .header-area-4 .header__logo img{width:100px;height:auto;max-height:44px;object-fit:contain}
 body.sc-home .header-area-4 .header__navicon{display:block;margin:0}
 body.sc-home .header-area-4 .side-toggle{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;position:relative}
 body.sc-home .header-area-4 .side-toggle svg{display:none}
 body.sc-home .header-area-4 .side-toggle::after{content:'';width:18px;height:8px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
 body.sc-home .header-area-4 .side-toggle{color:#fff}
 body.sc-contact-page .header-area-4 .side-toggle{color:#171717}
 body.sc-home .side-info{width:min(380px,100%);padding:20px 24px max(24px,env(safe-area-inset-bottom));height:100dvh;background:#f5f3ef;color:#171717;visibility:hidden}
 body.sc-home .side-info.info-open{visibility:visible}
 body.sc-home .side-info-content{min-height:0}
 body.sc-home .side-info .offset-header{margin:0 0 24px;padding:0;min-height:44px}
 body.sc-home .side-info-close{width:44px;height:44px;font-size:0;display:grid;place-items:center;border:1px solid #17171730;border-radius:50%}
 body.sc-home .side-info-close::after{content:'×';font:28px/1 Arial,sans-serif}
 body.sc-home .side-info-close i{display:none}
 body.sc-home .side-info .mobile-menu{display:none!important}
 body.sc-home .sc-mobile-nav{display:block}
 body.sc-home .sc-mobile-nav ul{list-style:none;margin:0;padding:0}
 body.sc-home .sc-mobile-nav li{margin:0;padding:0;border-top:1px solid #17171720}
 body.sc-home .sc-mobile-nav a{display:flex;align-items:center;min-height:54px;padding:12px 0;font-size:19px;line-height:1.4;color:#171717}
 body.sc-home .side-info .offset-button{display:block;margin:24px 0 0}
 body.sc-home .side-info .offset-button .rr-btn{display:flex;justify-content:center;padding:16px 20px;min-height:48px;background:#171717;color:#fff}
 body.sc-home .side-info .offset-widget-box{margin-top:28px}
 body.sc-home .side-info .offset-widget-box .title{font-size:18px;margin-bottom:14px}
 body.sc-home .side-info .contact-meta .contact-item{gap:12px;margin-top:12px}
 body.sc-home .side-info .contact-meta .text{font-size:14px;overflow-wrap:anywhere}
 body.sc-home.sc-menu-open{overflow:hidden}
}
@media(max-width:767px){
 body.sc-home{--sc-space:56px}
 body.sc-home .sc-container,body.sc-home .sc-about .sc-container,body.sc-home .dc-services__inner{width:calc(100% - 40px);min-width:0}
 body.sc-home .simple-hero,body.sc-home .sc-about-video-hero{height:auto;min-height:100svh}
 body.sc-home .simple-hero-content{width:calc(100% - 40px);min-height:100svh;padding:112px 0 32px;gap:24px;justify-content:space-between}
 body.sc-home .simple-hero h1,body.sc-home .sc-about-video-hero h1{font-size:clamp(40px,10.7vw,62px);line-height:1.08;letter-spacing:-.045em;margin:0;max-width:100%;overflow-wrap:normal}
 body.sc-home .simple-hero h1 span,body.sc-home .sc-about-video-hero h1 span{line-height:1.12}
 body.sc-home .hero-topline{display:none}
 body.sc-home .simple-hero h1{margin-top:auto;margin-bottom:auto}
 body.sc-home .hero-bottom{gap:20px;padding-top:20px}
 body.sc-home .hero-bottom p{font-size:14px;line-height:1.65}
 body.sc-home .sc-about-video-hero{padding:128px 0 64px}
 body.sc-home :is(.sc-about,.sc-results,.sc-founder,.sc-portfolio,.sc-contact){padding-block:56px;min-height:0}
 body.sc-home .sc-portfolio{padding-bottom:0}
 body.sc-home .sc-about .sc-about-grid,body.sc-home .sc-story-grid,body.sc-home .sc-results-intro,body.sc-home .sc-founder-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:26px;align-items:start}
 body.sc-home .sc-about .sc-heading.sc-shared-title-size,body.sc-home .sc-story-grid>h2.sc-heading,body.sc-home .sc-results .sc-heading,body.sc-home .sc-heading,body.sc-home .sc-contact h2,body.sc-home .sc-project-cta>p.sc-shared-title-size,body.sc-home #testemunhos .sc-heading{font-size:clamp(30px,8.2vw,40px);line-height:1.15;letter-spacing:-.03em}
 body.sc-home .sc-about .sc-about-copy p,body.sc-home .sc-about-copy p,body.sc-home .sc-results-copy p{font-size:16px;line-height:1.75;max-width:none}
 body.sc-home .dc-services .dc-services__grid{grid-template-columns:minmax(0,1fr);gap:0}
 body.sc-home .dc-services .dc-service:nth-child(n){padding:28px 0}
 body.sc-home .dc-services .dc-service h3.dc-service-badge{font-size:18px;min-height:0;padding:12px 20px;margin-bottom:18px}
 body.sc-home .dc-services .dc-service__content li{font-size:15px;line-height:1.65}
 body.sc-home .dc-services__header{padding-bottom:28px}
 body.sc-home .sc-gallery{grid-template-columns:minmax(0,1fr);gap:32px}
 body.sc-home .sc-gallery .sc-project-image{border-radius:20px}
 body.sc-home .sc-portfolio .sc-project-cta{margin-top:32px;padding-block:48px;gap:22px}
 body.sc-home .sc-stats{margin-top:28px;padding-top:24px}
 body.sc-home .sc-stats>div{padding-inline:4px}
 body.sc-home .sc-stats strong{font-size:clamp(36px,10vw,46px)}
 body.sc-home .sc-stats span{font-size:10px;letter-spacing:.04em}
 body.sc-home #testemunhos{padding-bottom:48px}
 body.sc-home #testemunhos .sc-testimonials-heading{padding:48px 0 28px;gap:16px}
 body.sc-home #testemunhos .sc-quote{flex-basis:100%;height:auto;min-height:0}
 body.sc-home #testemunhos .sc-testimonial-controls{margin-top:20px}
 body.sc-home .sc-quote-read{min-height:44px;display:inline-flex;align-items:center}
 body.sc-home .sc-quote-dialog{max-height:85dvh;padding:20px}
 body.sc-home .sc-page-hero:not(.sc-about-video-hero){padding:112px 0 40px}
 body.sc-contact-page .sc-page-hero h1{font-size:clamp(42px,11vw,60px);line-height:1.05}
 body.sc-contact-page .sc-contact-grid,body.sc-contact-page .sc-form-grid{grid-template-columns:minmax(0,1fr)}
 body.sc-contact-page .sc-form input,body.sc-contact-page .sc-form textarea{font-size:16px;padding:18px;min-height:58px}
 body.sc-home .sc-founder-grid>img{max-height:440px;width:100%;object-fit:contain}
 body.sc-home .sc-privacy{padding:112px 20px 56px}
 body.sc-home .copyright-area-4-inner{padding:22px 20px}
 body.sc-home .sc-legal-footer{padding:20px}
 body.sc-home .sc-legal-footer p{font-size:11px;overflow-wrap:anywhere}
 body.sc-home :is(.sc-contact-button,.sc-submit){max-width:100%;min-width:0}
 body.sc-home section[id]{scroll-margin-top:88px}
}
@media(hover:none),(pointer:coarse){
 .custom-cursor,#magic-cursor{display:none!important}
 body.sc-home,body.sc-home *{cursor:auto!important}
}
/* Review: clear hamburger, explicit story line, closer founder portrait. */
body.sc-home .sc-story-second-line{display:block}
body.sc-home .sc-story-section{padding-bottom:32px}
body.sc-home .sc-founder{padding-top:24px}
body.sc-home .sc-founder-grid{align-items:start}
body.sc-home .sc-founder-grid>img{display:block;margin:0;align-self:start;object-position:center top}
@media(max-width:1199px){
 body.sc-home .header-area-4 .side-toggle{border:0;border-radius:0;background:transparent;box-shadow:none}
 body.sc-home .header-area-4 .side-toggle::after{width:26px;height:10px;border:0;background:linear-gradient(currentColor,currentColor) right top/26px 1px no-repeat,linear-gradient(currentColor,currentColor) right bottom/18px 1px no-repeat}
}
@media(max-width:767px){
 body.sc-home .sc-story-section{padding-bottom:24px}
 body.sc-home .sc-founder{padding-top:0}
 body.sc-home .sc-founder-grid>img{height:auto;max-height:none}
}
@media(max-width:1199px),(hover:none),(pointer:coarse){
 .custom-cursor,#magic-cursor,.cb-cursor,.cb-cursor-text{display:none!important;visibility:hidden!important;pointer-events:none!important}
 body.sc-home,body.sc-home *{cursor:auto!important}
}
/* Keep the results introduction concise on phones only. */
@media(max-width:767px){
 body.sc-home .sc-results .sc-results-copy{display:none}
}

/* Three equal lines at the right edge, centered vertically with the logo. */
.sc-menu-lines{display:none}
@media(max-width:1199px){
 body.sc-home .header-area-4__inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
 body.sc-home .header-area-4 .header__navicon{order:1;margin:0;flex:0 0 44px}
 body.sc-home .header-area-4 .header__logo{margin:0 auto 0 0;align-self:center}
 body.sc-home .header-area-4 .side-toggle{display:flex;align-items:center;justify-content:flex-end;width:44px;height:44px;min-width:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
 body.sc-home .header-area-4 .side-toggle::before,
 body.sc-home .header-area-4 .side-toggle::after{content:none;display:none}
 body.sc-home .header-area-4 .side-toggle svg{display:none}
 body.sc-home .header-area-4 .side-toggle .sc-menu-lines{display:flex;flex-direction:column;justify-content:space-between;width:24px;height:18px;transform:none}
 body.sc-home .header-area-4 .sc-menu-lines>span{display:block;flex:0 0 2px;width:24px;height:2px;margin:0;padding:0;border:0;border-radius:1px;background:currentColor;transform:none}
}

/* No touch highlight, hover fill or pressed shadow on the menu button. */
@media(max-width:1199px){
 body.sc-home .header-area-4 .side-toggle,
 body.sc-home .header-area-4 .side-toggle:hover,
 body.sc-home .header-area-4 .side-toggle:active,
 body.sc-home .header-area-4 .side-toggle:focus{background:transparent!important;box-shadow:none!important;border:0;-webkit-tap-highlight-color:transparent;filter:none}
 body.sc-home .header-area-4 .side-toggle *{-webkit-tap-highlight-color:transparent}
 body.sc-home .header-area-4 .side-toggle:focus:not(:focus-visible){outline:none}
 body.sc-home .header-area-4 .side-toggle:focus-visible{outline:2px solid currentColor;outline-offset:4px}
}

/* Mobile heading layout. */
@media (max-width:767px){
 body.sc-home #sobre .sc-heading > br{display:none}
 body.sc-home #sobre .sc-about-second-line{display:block}
 body.sc-home .dc-services__header{display:block;text-align:center}
 body.sc-home #dc-services-title{width:100%;margin-inline:auto;text-align:center}
}

/* Sentence case for services; project names retain their written capitals. */
body.sc-home .dc-services :is(.dc-service-badge,.dc-service__content li){text-transform:none}
body.sc-home .sc-project-caption h3{text-transform:none}
@media(max-width:767px){
 body.sc-home .hero-bottom p,
 body.sc-home .sc-about-video-hero .sc-page-intro{font-size:18px;line-height:1.6;letter-spacing:0;font-weight:400;color:#fff;text-align:left}
 body.sc-home .dc-services__header,
 body.sc-home #dc-services-title{text-align:left}
 body.sc-home .dc-services__header .sc-label{justify-content:flex-start}
 body.sc-home .sc-contact h2 .sc-cta-break{display:none}
 body.sc-home .sc-contact h2 .sc-cta-second-line{display:block}
}

/* Keep the home introduction together, like the About hero on mobile. */
@media(max-width:767px){
 body.sc-home .simple-hero-content{display:flex;flex-direction:column;justify-content:center;align-items:stretch;min-height:100svh;box-sizing:border-box;padding:128px 0 64px;gap:0}
 body.sc-home .simple-hero h1{margin:0}
 body.sc-home .hero-bottom{margin-top:28px;padding-top:0;border-top:0;gap:24px}
 body.sc-home .hero-bottom p{margin:0;max-width:720px}
}

/* Keep the portfolio link at the foot of the mobile hero. */
@media(max-width:767px){
 body.sc-home .simple-hero-content{position:relative;padding-bottom:96px}
 body.sc-home .hero-bottom .hero-link{position:absolute;left:0;bottom:max(32px,env(safe-area-inset-bottom));width:100%;margin:0;justify-content:space-between}
}

@media(max-width:767px){
 body.sc-home .hero-bottom p strong{font-weight:400}
}

@media(max-width:767px){
 body.sc-home .hero-bottom .sc-hero-mobile-last-line{display:block}
}

/* Align the founder portrait with the story column on desktop. */
@media(min-width:768px){
 body.sc-home.sc-subpage .sc-founder-grid{width:min(1280px,88%);margin-inline:auto;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,96px)}
 body.sc-home.sc-subpage .sc-founder-grid>img{justify-self:center;object-position:center top;margin-inline:auto}
}
