

/* Brand-led typography and commercial hierarchy. */
:root{--display:'Caprasimo',Georgia,serif;--cream:#f8f5f0;--red:#b40913}
wa-details{display:block;font-family:var(--body);font-size:16px;--spacing:0;--wa-font-family-body:var(--body);--wa-font-size-m:16px;--wa-color-text-normal:var(--ink);--wa-color-surface-default:transparent;--wa-color-surface-raised:transparent;--wa-color-surface-border:#c6beb3;--wa-border-radius-m:0;--wa-focus-ring-color:var(--red);--wa-transition-normal:180ms}
wa-details::part(header){padding:17px 0;min-height:54px;font-size:16px;font-weight:500;color:var(--ink)}wa-details::part(content){padding:10px 0 20px;font-size:16px;line-height:1.75;color:var(--muted)}wa-details::part(icon){color:var(--red)}.faq wa-details{border-bottom:1px solid #b8b0a5}.faq wa-details:first-child{border-top:1px solid #b8b0a5}.faq wa-details p{font-size:16px;line-height:1.75;margin:0}.expand{display:grid;place-items:center}.pswp{--pswp-bg:#181a18}.pswp__button{min-width:50px;min-height:50px}.pswp__counter{font-family:var(--body)}.pswp__button:focus-visible{outline:2px solid white;outline-offset:-4px}
@media(prefers-reduced-motion:reduce){wa-details{--hide-duration:0ms;--show-duration:0ms}}

body{font-size:17px}h1,h2,h3{font-weight:400;letter-spacing:-.025em;text-transform:none!important}h2{font-family:Georgia,serif;font-weight:700;line-height:1.12}p{line-height:1.75}.small-label{font-size:13px;letter-spacing:.05em}.header{height:96px}.header-signature{font-size:12px}.header nav{font-size:15px;gap:28px}.logo img{width:82px;height:70px}.hero h1{font-size:clamp(70px,8.5vw,120px);font-weight:400;line-height:1.03;letter-spacing:-.035em}.hero-copy{top:29%;left:6%}.hero-top{font-size:13px}.hero-top>a{font-size:16px;font-weight:600}.hero-bottom{align-items:end}.hero-bottom p{font-size:17px;max-width:470px}.hero-bottom .round-link{font-size:16px}.hero-wordmark{font-size:12.1vw;letter-spacing:-.035em;bottom:12px;line-height:1;left:3%;font-weight:400}.hero>.image-note{font-size:10px}.hero-photo{height:60%}.hero>.image-note{top:calc(60% + 127px)}.primary-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;background:var(--red);color:white;padding:17px 24px;min-height:54px;font-size:17px;font-weight:600;border:1px solid var(--red);transition:background .2s}.primary-cta:hover{background:#8d0b13}.hero .primary-cta{margin-top:24px;max-width:330px}.hero-conversion{max-width:480px}.hero .round-link b{border:1px solid #ffffff80;width:50px;height:50px;border-radius:50%;font-size:25px}.intro h2{font-size:clamp(34px,4vw,56px)}.intro-right p{font-size:17px;max-width:470px}.filters button{font-size:15px;font-weight:500}.gallery-note{font-size:12px;max-width:800px}.project-copy h2{font-size:clamp(42px,5.7vw,78px);line-height:1.1;max-width:900px}.project-copy p{font-size:17px;max-width:580px}.project-service-link{font-size:16px;font-weight:600}.project .image-note{font-size:10px}.about-art h2{font-family:var(--display);font-size:clamp(38px,4.4vw,62px);line-height:1.16}.about-art>span.small-label:first-child{font-size:13px}.about-copy .about-lead{font:700 32px/1.25 Georgia,serif}.about-copy p{font-size:17px}.text-link{font-size:16px;font-weight:600}.services-head h2{font-size:clamp(38px,4.6vw,64px)}.services-head p{font-size:17px}.service{grid-template-columns:105px 1fr 230px 40px;gap:25px;padding:32px 0}.service>img{width:105px;height:95px}.service h3{font-size:30px}.service p{font-size:15px}.service-price{font:700 31px/1.2 var(--body);color:var(--red)}.service-price .price-prefix{display:block;font:500 13px var(--body);color:var(--muted);margin-bottom:7px}.service-price small{font:400 14px/1.5 var(--body);margin-top:8px}.contact h2{font-family:var(--display);font-size:clamp(45px,6.7vw,92px);line-height:1.12;font-weight:400}.contact h2 span{white-space:normal}.contact-bottom p{font-size:17px}.contact-button{background:var(--cream);color:var(--red);border:0;padding:20px 26px;font-size:18px;font-weight:700;min-height:60px}.contact-button:hover{background:white;color:var(--red)}footer{font-size:13px}footer small{font-size:12px}.cases{padding:90px 6%;background:#f3efe8}.cases-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:end;margin-bottom:45px}.cases-heading h2{font-size:clamp(36px,4vw,58px)}.cases-heading p{font-size:16px;color:var(--muted);max-width:480px}.case-study{display:grid;grid-template-columns:1.15fr 1fr;margin-top:30px;gap:0;background:var(--cream)}.case-study>img{height:100%;min-height:460px;width:100%;object-fit:cover}.case-copy{padding:45px}.case-copy h3{font-size:30px;line-height:1.3;margin:16px 0 25px}.case-demo{display:inline-block;font-size:12px;font-weight:600;color:var(--red);padding:7px 0;border-bottom:1px solid #c6beb3}.case-copy dl{margin:0}.case-copy dt{font-size:15px;font-weight:700;margin-top:20px}.case-copy dd{margin:7px 0 0;font-size:16px;line-height:1.7;color:var(--muted)}.case-copy .text-link{margin-top:20px}.case-study:nth-child(odd)>img{order:2}.case-study:nth-child(odd) .case-copy{order:1}.case-note{font-size:12px;color:var(--muted);margin-top:28px;line-height:1.7}
.service-page .service-hero h1{font-size:clamp(55px,6.7vw,94px);line-height:1.13;font-weight:400;max-width:1000px}.service-page .back-link{font-size:15px}.service-page .service-hero-bottom p{font-size:17px;max-width:430px}.service-page .service-hero-bottom>a{font-size:17px}.service-page .discipline-strip{font-size:12px}.service-page .image-note{font-size:10px}.service-page .service-story h2{font-size:clamp(34px,3.8vw,52px)}.service-page .service-story p{font-size:17px}.service-page .pricing-heading h2{font-size:clamp(38px,4.4vw,62px)}.service-page .pricing-heading>p{font-size:16px;max-width:350px}.service-page .plans{margin-bottom:50px}.service-page .plan,.service-page .plan:first-child{grid-template-columns:1fr 230px 1fr;gap:25px;padding:35px 0}.service-page .plan h3{font-size:32px}.service-page .plan-tagline{font-size:16px;max-width:330px;line-height:1.7}.service-page .price{font:700 50px/1.1 var(--body);color:var(--red);letter-spacing:-.035em}.service-page .price>span{font-size:17px}.plan-details{font-size:16px}.plan-details summary{min-height:50px;font-size:16px}.service-page .plan li{font-size:15px;line-height:1.7;padding:13px 0}.service-page .plan-cta{grid-column:1/-1;justify-self:start;background:var(--red);color:white;font-size:17px;border:0;padding:15px 22px;min-height:54px;gap:35px}.service-page .plan-cta:hover{background:#8d0b13;color:white}.comparison{font-size:15px}.comparison caption{font-size:15px}.comparison thead th{font:700 24px Georgia,serif}.comparison .compare-price{font:700 29px var(--body)}.comparison td,.comparison th{line-height:1.65}.service-page .conditions h3{font-size:26px}.service-page .conditions ul{font-size:15px}.service-page .extras h2{font-size:44px}.extras-intro{font-size:17px}.service-page .extra h3{font-size:25px}.service-page .extra p{font-size:16px}.service-page .extra strong{font-size:24px;font-weight:700}.service-page .process-heading h2{font-size:35px}.service-page .process-steps h3{font-size:25px}.service-page .process-steps p{font-size:16px}.service-page .process-steps article>span{font-size:12px}.service-page .faq h2{font-size:38px}.service-page .faq summary{font-size:17px;font-weight:500}.service-page .faq details p{font-size:16px}.service-page .contact h2{font-size:clamp(42px,6.5vw,90px)}.service-page .other-services>span{font-size:15px}.service-page .other-services a{font-size:25px}.service-page .comparison-hint{font-size:13px}
@media(min-width:761px){.hero-bottom{bottom:clamp(190px,17vw,260px)}}
@media(max-width:1100px){.service{grid-template-columns:85px 1fr 195px 30px;gap:20px}.service-price{font-size:27px}.service h3{font-size:25px}.service-page .plan,.service-page .plan:first-child{grid-template-columns:1fr 190px}.plan-details{grid-column:1/-1}.service-page .process-steps{flex-direction:column}.service-page .process-steps article{padding-top:32px}.cases-heading{gap:30px}.case-copy{padding:30px}}
@media(max-width:760px){.header{height:82px}.logo img{width:65px;height:55px}.header nav{top:81px}.header nav a{font-size:17px}.small-label{font-size:12px}.hero{min-height:850px;height:105svh;max-height:1060px}.hero-photo{top:100px;height:60%;left:13%;right:5%}.hero-copy{top:30%;left:5%}.hero h1{font-size:clamp(58px,16vw,82px);line-height:1.1}.hero-top{font-size:10px;top:120px}.hero-top>a{font-size:13px;max-width:150px}.hero-bottom{bottom:110px;align-items:end}.hero-bottom p{font-size:15px;max-width:270px}.hero-bottom .round-link{display:none}.hero .primary-cta{font-size:15px;padding:15px 18px;max-width:280px;margin-top:18px}.hero>.image-note{top:calc(60% + 110px);left:13%;font-size:8px}.hero-wordmark{font-size:12vw;left:4%;bottom:20px}.intro{padding-top:55px}.intro h2{font-size:32px}.intro-right p{font-size:16px}.filters{gap:14px;justify-content:start;flex-wrap:wrap}.filters button{font-size:14px}.gallery-note{font-size:11px}.project-copy h2{font-size:clamp(33px,9vw,47px);max-width:290px;line-height:1.15}.project-copy p{font-size:15px;max-width:270px}.project-service-link{font-size:14px}.project .image-note{font-size:9px}.about-art h2{font-size:clamp(34px,9vw,48px);line-height:1.2}.about-copy .about-lead{font-size:27px}.about-copy p{font-size:16px}.text-link{font-size:15px}.services-head h2{font-size:37px}.services-head p{font-size:16px}.service{grid-template-columns:65px 1fr 25px;gap:16px;padding:28px 0}.service h3{font-size:23px;line-height:1.3}.service p{font-size:14px}.service-price{font-size:28px;margin-top:8px}.service-price .price-prefix{font-size:12px}.service-price small{font-size:13px}.contact h2,.portfolio-page .contact h2{font-size:clamp(30px,8vw,47px);line-height:1.2}.contact-bottom p{font-size:16px}.contact-button{font-size:16px;padding:18px 20px}.cases{padding:60px 5%}.cases-heading{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.cases-heading h2{font-size:34px}.cases-heading p{font-size:16px}.case-study{grid-template-columns:1fr;margin-top:25px}.case-study>img{height:270px;min-height:0}.case-study:nth-child(odd)>img{order:0}.case-study:nth-child(odd) .case-copy{order:0}.case-copy{padding:25px}.case-copy h3{font-size:25px}.case-copy dd{font-size:15px}.case-note{font-size:12px}footer{font-size:12px}footer small{font-size:11px}.service-page .service-hero{min-height:800px;height:100svh;max-height:1000px}.service-page .service-hero-copy{top:112px;bottom:65px}.service-page .service-hero h1{font-size:clamp(32px,8.8vw,50px);line-height:1.2}.service-page .back-link{font-size:13px;margin-bottom:24px}.service-page .service-hero-bottom p{font-size:16px;max-width:330px}.service-page .service-hero-bottom>a{font-size:16px}.service-page .discipline-strip{font-size:10px;line-height:1.8}.service-page .service-story h2{font-size:31px}.service-page .service-story p{font-size:16px}.service-page .pricing-heading h2{font-size:34px}.service-page .pricing-heading>p{font-size:15px}.service-page .plan,.service-page .plan:first-child{grid-template-columns:1fr;gap:20px;padding:30px 0}.service-page .plan h3{font-size:30px}.service-page .plan-tagline{font-size:16px}.service-page .price{font-size:52px}.service-page .price>span{font-size:17px}.plan-details{grid-column:1}.service-page .plan-cta{grid-column:1;justify-self:stretch;font-size:16px}.service-page .plan li{font-size:15px}.service-page .comparison{font-size:14px;min-width:700px}.service-page .comparison caption{font-size:14px}.service-page .comparison thead th{font-size:21px}.service-page .comparison .compare-price{font-size:26px}.service-page .conditions ul{font-size:15px}.service-page .extras h2{font-size:32px}.service-page .extra h3{font-size:22px}.service-page .extra p{font-size:15px}.service-page .extra strong{font-size:23px}.service-page .process-heading h2{font-size:30px}.service-page .process-steps h3{font-size:23px}.service-page .process-steps p{font-size:16px}.service-page .faq h2{font-size:32px}.service-page .faq summary{font-size:16px}.service-page .faq details p{font-size:15px}.service-page .contact h2{font-size:clamp(30px,8vw,47px);line-height:1.2}.service-page .other-services a{font-size:23px}}

/* Content typography and composition: brand remains in the original logo. */
h1,h2,h3,.about-art h2,.contact h2,.service-page .contact h2,.service-page .service-hero h1{font-family:var(--body);font-weight:600;letter-spacing:-.035em}
.comparison thead th{font-family:var(--body);font-weight:600}.case-copy h3{font-family:var(--body)}
.portfolio-page .hero{display:grid;grid-template-columns:1.06fr 1fr;gap:6%;height:auto;min-height:0;max-height:none;padding:160px 6% 70px;overflow:visible;align-items:center;background:var(--ink)}
.hero-editorial{min-width:0}.hero-category{display:block;font-size:14px;color:#c6c1b9;line-height:1.6;margin-bottom:30px}.portfolio-page .hero h1{font-family:var(--body);font-weight:500;font-size:clamp(40px,4vw,59px);line-height:1.14;letter-spacing:-.04em;animation:none}.hero-editorial h1 span{color:#d8d1c5}.hero-editorial>p{font-size:19px;line-height:1.75;color:#d7d1c9;margin-top:28px;max-width:490px}.hero-actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:32px}.hero .primary-cta{margin:0;max-width:none;font-size:17px}.hero-secondary{display:inline-flex;align-items:center;min-height:44px;font-size:15px;color:#e6e0d8}.hero-assurance{display:block;color:#beb8ae;font-size:13px;line-height:1.7;margin-top:23px}.portfolio-page .hero-photo{position:relative;inset:auto;height:auto;margin:0;overflow:visible;min-width:0}.portfolio-page .hero-image{position:static;width:100%;height:570px;object-fit:cover;object-position:56% center;transform:none!important;animation:none;will-change:auto}.hero-photo figcaption{font-size:11px;line-height:1.7;margin-top:13px;color:#bdb7ae}.portfolio-page .intro h2{font-family:var(--body);font-size:clamp(34px,3.5vw,50px);line-height:1.15}.portfolio-page .intro-right p{font-size:18px}.portfolio-page .about{padding:95px 6%;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:start}.portfolio-page .about-art{background:none}.portfolio-page .about-art h2{font-size:clamp(35px,3.8vw,54px);line-height:1.16;margin:25px 0}.portfolio-page .about-copy{padding-top:0}.portfolio-page .about-copy .about-lead{font:500 27px/1.5 var(--body);letter-spacing:-.025em;color:var(--ink);margin-bottom:24px}.portfolio-page .about-copy p{font-size:18px;line-height:1.8;max-width:600px;margin-bottom:20px}.portfolio-page .services-head{grid-template-columns:1.1fr 1fr;gap:30px 8%}.portfolio-page .services-head h2{font-size:clamp(36px,4vw,56px);line-height:1.12}.portfolio-page .services-head p{font-size:18px;line-height:1.8;max-width:510px}.portfolio-page .service{grid-template-columns:135px 1fr 210px;gap:35px;align-items:center;padding:38px 0}.portfolio-page .service>img{width:135px;height:160px;filter:none}.portfolio-page .service h3{font-family:var(--body);font-size:29px;line-height:1.2;font-weight:600}.portfolio-page .service p{font-size:17px;line-height:1.75;max-width:530px;margin-top:12px}.service-action{display:inline-flex;align-items:center;font-size:15px;font-weight:600;color:var(--red);min-height:44px;margin-top:12px}.portfolio-page .service-price{font-size:35px;line-height:1.2}.portfolio-page .service-price small{font-size:14px;line-height:1.6}.portfolio-page .contact h2{font-family:var(--body);font-size:clamp(43px,6vw,82px);line-height:1.1}.service-page .service-hero h1{font-family:var(--body);font-size:clamp(48px,6vw,86px);font-weight:500;line-height:1.15}.service-page .service-hero-copy{max-width:none}.service-page .plan h3{font-family:var(--body);font-size:30px;font-weight:600}.case-copy h3{font-size:30px;font-weight:600;line-height:1.25}
@media(max-width:1000px){.portfolio-page .hero{gap:5%;padding:145px 5% 60px}.portfolio-page .hero-image{height:530px}.portfolio-page .hero h1{font-size:41px}.portfolio-page .service{grid-template-columns:95px 1fr 185px;gap:25px}.portfolio-page .service>img{width:95px;height:145px}.portfolio-page .service h3{font-size:25px}.portfolio-page .service-price{font-size:31px}}
@media(max-width:760px){.portfolio-page .hero{grid-template-columns:1fr;gap:35px;padding:120px 5% 45px;height:auto;min-height:0;max-height:none}.hero-category{font-size:12px;margin-bottom:22px}.portfolio-page .hero h1{font-size:clamp(33px,9vw,46px);line-height:1.17}.hero-editorial>p{font-size:17px;line-height:1.75;margin-top:22px}.hero-actions{margin-top:26px;gap:16px}.hero .primary-cta{font-size:16px;padding:17px 22px}.hero-secondary{font-size:14px}.hero-assurance{font-size:12px;margin-top:18px}.portfolio-page .hero-image{height:390px;object-position:center}.hero-photo figcaption{font-size:10px}.portfolio-page .about{grid-template-columns:1fr;gap:25px;padding:60px 5%}.portfolio-page .about-art h2{font-size:36px}.portfolio-page .about-copy .about-lead{font-size:23px;line-height:1.5}.portfolio-page .about-copy p{font-size:17px;line-height:1.8}.portfolio-page .services-head{grid-template-columns:1fr;gap:22px}.portfolio-page .services-head h2{font-size:36px}.portfolio-page .services-head p{font-size:17px}.portfolio-page .service{grid-template-columns:1fr;padding:30px 0;gap:22px}.portfolio-page .service>img{width:100%;height:190px;grid-row:auto;object-position:center}.portfolio-page .service h3{font-size:26px}.portfolio-page .service p{font-size:16px;line-height:1.75}.service-action{font-size:14px;margin-top:8px}.portfolio-page .service-price{grid-column:auto;grid-row:auto;margin:0;font-size:38px}.portfolio-page .service-price small{font-size:14px}.portfolio-page .contact h2{font-size:43px}.service-page .service-hero h1{font-size:clamp(39px,10vw,55px);line-height:1.15}.service-page .service-hero{min-height:780px}.case-copy h3{font-size:26px}.portfolio-page .intro h2{font-size:33px}.portfolio-page .intro-right p{font-size:17px}}
/* João: off-white canvas, red actions, warm brown typography. */
:root{--cream:#f8f5f0;--ink:#493126;--muted:#756052;--red:#b20e19}
body{background:var(--cream);color:var(--ink)}
.header,.header.scrolled{background:var(--cream);color:var(--ink);border-bottom:1px solid #e4dcd7}
.header-signature,.menu-toggle{color:var(--ink)}
.header nav a:hover{color:var(--red)}
.footer{background:#f3efe8;color:var(--ink)}
.footer-brand{color:var(--red)}
.service-page .service-hero{background:var(--cream);color:var(--ink)}
.service-page .service-shade{background:linear-gradient(90deg,#f8f5f0 25%,#f8f5f0ed 43%,#f8f5f060 73%,#f8f5f030)}
.service-page .service-hero h1{color:var(--red)}
.service-page .service-hero-bottom p,.service-page .back-link,.service-page .image-note{color:var(--ink)}
.service-page .service-hero-bottom a{color:var(--red);border-color:#b20e1950}
.service-page .service-story,.service-page .process{background:#f3efe8;color:var(--ink)}
.service-page .process p{color:var(--muted)}
@media(max-width:760px){.header nav{background:var(--cream);color:var(--ink)}.service-page .service-shade{background:linear-gradient(180deg,#f8f5f030,#f8f5f0b0 35%,#f8f5f0 65%)} }footer{background:#f3efe8;color:var(--ink)}footer small{color:var(--muted)}.service-page .process-steps article{border-color:#49312635}.service-page .process-steps article>span{color:var(--red)}
