:root{--paper:#f5f0e8;--ink:#11110f;--muted:#6b6963;--line:rgba(17,17,15,.18);--orange:#bf3b20;--acid:#e8ff58;--green:#1e4c40;--rose:#e5b9bb;--lilac:#cabcf3;--cream:#e9ddcd;--max:1240px;--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.62;-webkit-font-smoothing:antialiased}img,svg{max-width:100%;display:block}a{color:inherit;text-underline-offset:.18em}button,input,select,textarea{font:inherit}.skip{position:fixed;left:1rem;top:-5rem;z-index:9999;background:var(--acid);padding:.7rem 1rem}.skip:focus{top:1rem}.container{width:min(calc(100% - 42px),var(--max));margin:auto}.narrow{width:min(calc(100% - 42px),820px);margin:auto}.eyebrow{font-size:.72rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin:0 0 1rem}.display{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:.95;margin:0}.display em,.hero h1 em{color:var(--orange);font-weight:400}.lead{font-size:clamp(1.04rem,1.8vw,1.34rem);line-height:1.55;color:#3d3b37;max-width:760px}.small{font-size:.84rem}.muted{color:var(--muted)}.kicker{font-size:.7rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:48px;padding:.74rem 1.1rem;border:1px solid var(--ink);background:var(--ink);color:#fff;text-decoration:none;font-size:.74rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;transition:.2s}.btn:hover{transform:translateY(-2px);background:var(--orange);border-color:var(--orange)}.btn.secondary{background:transparent;color:var(--ink)}.btn.secondary:hover{background:var(--ink);color:#fff}.buttons{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.site-header{position:sticky;top:0;z-index:1000;background:rgba(245,240,232,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:1.4rem}.brand{text-decoration:none;line-height:1}.brand strong{display:block;font-size:.98rem;letter-spacing:-.04em}.brand span{display:block;margin-top:.38rem;font-size:.56rem;letter-spacing:.14em;text-transform:uppercase}.nav-wrap,.main-nav{display:flex;align-items:center;gap:1.2rem}.main-nav a,.lang-link{font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.menu-button{display:none;border:0;background:none;font-weight:800}.header-cta{min-height:40px;padding:.52rem .8rem}.breadcrumbs{padding:1rem 0;border-bottom:1px solid var(--line);font-size:.69rem;text-transform:uppercase;letter-spacing:.08em}.breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}.breadcrumbs li:not(:last-child)::after{content:" / ";margin-left:.45rem;color:var(--muted)}.breadcrumbs a{text-decoration:none}.hero{padding:clamp(3rem,7vw,7.5rem) 0 3rem;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(2rem,5vw,6rem);align-items:center}.hero h1{font-family:var(--serif);font-size:clamp(3.2rem,6.6vw,7.5rem);font-weight:400;letter-spacing:-.058em;line-height:.89;margin:0}.hero-visual{position:relative}.hero-visual img{width:100%;aspect-ratio:1.22/1;object-fit:cover}.hero-visual:before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid var(--ink);z-index:-1}.hero-note{position:absolute;right:-12px;bottom:18px;background:var(--acid);padding:.9rem;max-width:210px;font-size:.69rem;font-weight:850;text-transform:uppercase}.proof-strip{padding:1.2rem 0;border-bottom:1px solid var(--line)}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.proof-item{font-size:.76rem;font-weight:750;display:flex;align-items:center;gap:.65rem}.proof-item i{width:9px;height:9px;background:var(--orange);border-radius:50%}.section{padding:clamp(4rem,8vw,8rem) 0}.section.tight{padding:3rem 0}.dark{background:var(--ink);color:var(--paper)}.dark .lead,.dark .muted{color:#c8c4bb}.acid{background:var(--acid)}.green{background:var(--green);color:#fff}.lilac{background:var(--lilac)}.section-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:3rem;align-items:end;margin-bottom:3rem}.section-head h2,.content h2{font-family:var(--serif);font-size:clamp(2.3rem,4.4vw,5rem);font-weight:400;line-height:1;letter-spacing:-.045em;margin:0}.section-head p{max-width:650px;margin:0}.grid-2,.grid-3,.grid-4{display:grid;gap:1.15rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.card{position:relative;border:1px solid var(--line);padding:1.35rem;background:rgba(255,255,255,.16);min-height:100%}.card h3{font-family:var(--serif);font-size:1.55rem;line-height:1.08;margin:.65rem 0}.card p{font-size:.91rem;color:var(--muted)}.dark .card p,.green .card p{color:#d2cec5}.card-number{font-size:.66rem;font-weight:850;letter-spacing:.1em}.card-image{padding:0;overflow:hidden;background:var(--paper);color:var(--ink)}.card-image img{width:100%;aspect-ratio:1.25/1;object-fit:cover;transition:.4s}.card-image:hover img{transform:scale(1.02)}.card-copy{padding:1.25rem}.card .stretch:after{content:"";position:absolute;inset:0}.concept-label{display:inline-block;background:var(--acid);padding:.32rem .52rem;font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}.split{display:grid;grid-template-columns:1fr 1fr;min-height:570px}.split-copy{padding:clamp(3rem,7vw,7rem);display:flex;flex-direction:column;justify-content:center}.split-media img{width:100%;height:100%;object-fit:cover}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}.step{border-top:3px solid var(--ink);padding-top:1rem}.step .num{font-family:var(--serif);font-size:2.5rem}.step h3{font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}.accent-orange{--accent:var(--orange)}.accent-acid{--accent:var(--acid)}.accent-green{--accent:#66c7ad}.accent-rose{--accent:var(--rose)}.accent-lilac{--accent:var(--lilac)}.accent-purple{--accent:#8a70dc}.accent-gold{--accent:#b39753}.accent-cream{--accent:var(--cream)}.accent-dark{--accent:var(--ink)}.inner-hero{padding:clamp(3rem,6vw,6rem) 0}.inner-grid{display:grid;grid-template-columns:1fr .76fr;gap:clamp(2rem,6vw,6rem);align-items:end}.inner-hero h1{font-family:var(--serif);font-size:clamp(3rem,6vw,6.7rem);font-weight:400;letter-spacing:-.055em;line-height:.92;margin:0}.visual{background:var(--accent);padding:1.15rem}.visual img{width:100%;aspect-ratio:1.35/1;object-fit:cover}.marquee{overflow:hidden;background:var(--ink);color:#fff;padding:.85rem 0;white-space:nowrap}.marquee-track{display:inline-block;animation:marquee 25s linear infinite;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em}.marquee-track span{margin-right:3rem}@keyframes marquee{to{transform:translateX(-50%)}}.outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:3rem}.outcome{background:var(--paper);padding:1.45rem}.outcome strong{display:block;font-family:var(--serif);font-size:1.45rem;line-height:1.1}.content-layout{display:grid;grid-template-columns:240px minmax(0,780px);gap:clamp(2rem,7vw,7rem);align-items:start}.sticky-nav{position:sticky;top:108px}.sticky-nav a{display:block;padding:.63rem 0;border-bottom:1px solid var(--line);font-size:.75rem;font-weight:750;text-decoration:none}.content section{scroll-margin-top:110px;padding-bottom:4.5rem}.content h2{font-size:clamp(2.2rem,3.8vw,4rem);margin-bottom:1.25rem}.content p{font-size:1.03rem}.content li{margin:.5rem 0}.source-box,.policy-note{padding:1.15rem 1.3rem;background:#eee6dc;border-left:5px solid var(--orange);margin:2rem 0}.policy-note{border:1px solid #af9036;background:#fff8df}.faq-list details{border-top:1px solid var(--line);padding:1.05rem 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-weight:800;display:flex;justify-content:space-between}.faq-list summary:after{content:"+";font-size:1.35rem}.faq-list details[open] summary:after{content:"-"}.faq-list p{color:var(--muted);max-width:760px}.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.related-card{position:relative;border-top:2px solid var(--ink);padding-top:1rem}.related-card h3{font-family:var(--serif);font-size:1.35rem;margin:.4rem 0}.related-card a:after{content:"";position:absolute;inset:0}.facts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.fact{padding:1.3rem;border-right:1px solid var(--line)}.fact:last-child{border:0}.fact span{display:block;font-size:.63rem;text-transform:uppercase;font-weight:850;letter-spacing:.08em;color:var(--muted)}.case-image{width:100%;aspect-ratio:16/7;object-fit:cover;margin-top:2rem}.case-gallery{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.case-gallery img{width:100%;height:100%;min-height:350px;object-fit:cover}.price-table{width:100%;border-collapse:collapse}.price-table th,.price-table td{text-align:left;padding:1rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}.price-table th{font-size:.7rem;text-transform:uppercase;letter-spacing:.07em}.estimator{display:grid;grid-template-columns:1fr .8fr;gap:2rem;border:1px solid var(--line);padding:clamp(1.5rem,4vw,3rem)}.field{margin-bottom:1.2rem}.field label{display:block;margin-bottom:.4rem;font-size:.82rem;font-weight:750}.field input,.field select,.field textarea{width:100%;padding:.85rem;border:1px solid var(--ink);background:#fff}.estimate-result{background:var(--ink);color:#fff;padding:2rem;display:flex;flex-direction:column;justify-content:center}.estimate-result strong{font-family:var(--serif);font-size:clamp(2.2rem,4vw,4rem);font-weight:400}.resource-nav{display:flex;flex-wrap:wrap;gap:.55rem;margin:2rem 0 4rem}.resource-nav a{border:1px solid var(--ink);padding:.52rem .75rem;text-decoration:none;font-size:.72rem;font-weight:800}.download-card{display:flex;justify-content:space-between;align-items:center;gap:2rem;background:var(--acid);padding:2rem}.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(2rem,6vw,6rem)}.contact-form{border:1px solid var(--line);padding:clamp(1.2rem,4vw,3rem)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field.full{grid-column:1/-1}.field textarea{min-height:150px;resize:vertical}.form-note,.form-status{font-size:.78rem;color:var(--muted)}.footer-cta{padding:5rem 0;background:var(--cream)}.footer-cta-grid{display:grid;grid-template-columns:1.5fr .5fr;gap:2rem;align-items:end}.footer-cta h2{font-family:var(--serif);font-size:clamp(2.8rem,6vw,6.4rem);line-height:.92;font-weight:400;letter-spacing:-.05em;margin:0}.site-footer{padding:2rem 0;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.footer-nav a{font-size:.76rem;text-decoration:none}.fine{display:flex;justify-content:space-between;gap:2rem;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.66rem;color:var(--muted)}.reveal{opacity:0;transform:translateY(16px);transition:.6s}.reveal.in{opacity:1;transform:none}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
@media(max-width:980px){.main-nav{position:fixed;inset:78px 0 auto;background:var(--paper);border-bottom:1px solid var(--line);padding:1.3rem 21px;display:none;flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.menu-button{display:block}.header-cta{display:none}.hero-grid,.inner-grid,.section-head,.content-layout,.contact-grid,.estimator{grid-template-columns:1fr}.sticky-nav{position:static;display:flex;overflow:auto;gap:1rem;border-bottom:1px solid var(--line)}.sticky-nav a{min-width:max-content;border:0}.grid-4,.related-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.split-media{min-height:420px}.facts{grid-template-columns:repeat(2,1fr)}.footer-cta-grid,.footer-grid{grid-template-columns:1fr}.proof-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){body{font-size:16px}.container,.narrow{width:min(calc(100% - 28px),var(--max))}.header-inner{height:68px}.main-nav{inset:68px 0 auto}.brand strong{font-size:.84rem}.brand span{font-size:.5rem}.nav-wrap{gap:.4rem}.hero-grid{display:block}.hero h1{font-size:clamp(3rem,15vw,5.1rem)}.hero-visual{margin-top:2rem}.proof-grid,.grid-2,.grid-3,.grid-4,.related-grid,.form-grid,.case-gallery{grid-template-columns:1fr}.outcomes{grid-template-columns:1fr}.facts{grid-template-columns:1fr}.fact{border-right:0;border-bottom:1px solid var(--line)}.steps{grid-template-columns:1fr}.download-card{flex-direction:column;align-items:flex-start}.fine{display:block}.fine span{display:block;margin-top:.5rem}.inner-hero h1{font-size:clamp(2.8rem,14vw,5rem)}.section{padding:4rem 0}.split-copy{padding:3rem 1.2rem}.marquee{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.marquee-track{animation:none}.btn,.card img{transition:none}}
/* Template aliases and finishing details */
/* Intrinsic image correction */
img,svg{height:auto}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:9999;background:var(--acid);color:var(--ink);padding:.7rem 1rem;text-decoration:none;font-weight:800}.skip-link:focus{top:1rem}.header-inner{width:min(calc(100% - 42px),var(--max));margin-inline:auto}.lede{font-size:clamp(1.04rem,1.8vw,1.34rem);line-height:1.55;color:#3d3b37;max-width:760px}.dark .lede{color:#c8c4bb}.button-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.lang{font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.btn-dark{background:var(--ink);color:#fff}.btn-light{background:var(--paper);border-color:var(--paper);color:var(--ink)}.btn-light:hover{color:#fff}.proof{padding:1.2rem 0;border-bottom:1px solid var(--line)}.proof-grid>div{font-size:.76rem;display:flex;flex-direction:column;gap:.3rem;padding-right:1rem;border-right:1px solid var(--line)}.proof-grid>div:last-child{border-right:0}.proof-grid strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.proof-grid span{color:var(--muted);line-height:1.35}.hero-visual figcaption{margin-top:.75rem;font-size:.68rem;font-weight:750;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.text-link{display:inline-block;font-size:.72rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.15rem}.text-link:hover{color:var(--orange)}.table-wrap{overflow-x:auto}.hero-copy{min-width:0}.source-box a{font-weight:800}.visual img{background:#fff}.card-image .card-copy{position:relative}.contact-form .btn{cursor:pointer}.menu-button{width:42px;height:42px;padding:8px;cursor:pointer}.menu-button span{display:block;width:23px;height:2px;background:var(--ink);margin:4px auto;transition:.2s}.fine a{white-space:nowrap}
@media(max-width:640px){.header-inner{width:min(calc(100% - 28px),var(--max))}.proof-grid>div{border-right:0;border-bottom:1px solid var(--line);padding:0 0 1rem}.proof-grid>div:last-child{border-bottom:0}.button-row .btn{flex:1 1 auto}}

/* Final Madrid portfolio and conversion layer - 2026-08-04 */
:root{--orange:#bf3b20;--whatsapp:#0b6b3a;--paper-soft:#faf7f2;--shadow:0 24px 70px rgba(17,17,15,.12)}
body{overflow-x:hidden}.main-nav a[aria-current=page]{color:var(--orange);border-bottom:1px solid currentColor}.header-location{font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.header-inner{max-width:1480px}.site-header{isolation:isolate}.main-nav{gap:clamp(.7rem,1.15vw,1.2rem)}
.breadcrumbs{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-bottom:2.2rem;padding:0 0 .8rem}.breadcrumbs a,.breadcrumbs span{font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;text-decoration:none}.breadcrumbs span[aria-current=page]{color:var(--muted)}
.home-hero{padding-top:clamp(3.5rem,7vw,7rem)}.home-hero .hero-grid{grid-template-columns:.92fr 1.08fr}.home-hero h1{font-size:clamp(3.6rem,6.5vw,7.3rem)}.hero-contact{display:flex;flex-wrap:wrap;gap:.55rem 1.2rem;margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--line);font-size:.74rem;font-weight:750}.hero-contact a{text-decoration:none}.hero-portfolio img{aspect-ratio:1.5/1}.hero-portfolio:after{content:"MADRID / INTERNATIONAL";position:absolute;right:-1px;top:-1px;background:var(--ink);color:#fff;padding:.55rem .75rem;font-size:.58rem;font-weight:850;letter-spacing:.1em}.hero-portfolio figcaption,.visual figcaption,.portrait-card figcaption{font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.7rem}
.image-link{display:block;position:relative;z-index:1}.portfolio-card{box-shadow:0 0 0 rgba(0,0,0,0);transition:transform .25s,box-shadow .25s}.portfolio-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.portfolio-card .card-copy p{min-height:2.8em}.portfolio-grid{align-items:stretch}.section-actions{display:flex;align-items:center;justify-content:center;gap:1rem 2rem;flex-wrap:wrap;margin-top:2.5rem}.concept-label{background:#d9ef63}.check-list{list-style:none;padding:0;margin:1.5rem 0}.check-list li{position:relative;padding:.58rem 0 .58rem 1.7rem;border-bottom:1px solid var(--line)}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--orange);font-weight:900}.dark .check-list li{border-color:rgba(255,255,255,.2)}
.about-home{background:#e9ddcd}.portrait-media img{object-position:center 34%;filter:grayscale(1)}.about-hero .inner-grid{grid-template-columns:1fr .68fr}.portrait-card{background:#11110f}.portrait-card img{aspect-ratio:4/5;object-position:center 28%;filter:grayscale(1)}.portrait-card figcaption{color:#fff}.skill-grid,.scope-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:2rem}.skill-grid>div,.scope-grid>div{background:var(--paper);padding:1.2rem}.skill-grid strong,.scope-grid strong{display:block;font-family:var(--serif);font-size:1.35rem}.skill-grid span,.scope-grid span{display:block;color:var(--muted);font-size:.86rem;margin-top:.3rem}.social-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:2rem}.social-panel a{display:flex;flex-direction:column;padding:1.1rem;background:var(--paper);text-decoration:none}.social-panel a:hover{background:var(--acid)}.social-panel span{font-size:.72rem;color:var(--muted)}.social-panel.vertical{grid-template-columns:1fr}.social-panel.vertical a{background:rgba(255,255,255,.18)}
.case-cover img{aspect-ratio:1.5/1}.case-study .content p{max-width:760px}.case-gallery{margin-top:2rem}.case-gallery img{aspect-ratio:auto}.portfolio-evidence{border-top:1px solid var(--line);background:var(--paper-soft)}
.contact-aside h2{font-family:var(--serif);font-size:clamp(2.4rem,4vw,4.8rem);line-height:.96;font-weight:400}.contact-methods{border-top:1px solid var(--line);margin-top:2rem}.contact-methods>a,.contact-methods>div{display:flex;flex-direction:column;padding:1rem 0;border-bottom:1px solid var(--line);text-decoration:none}.contact-methods>a:hover strong{color:var(--orange)}.contact-methods span{font-size:.63rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:800}.contact-methods strong{font-family:var(--serif);font-size:1.25rem;font-weight:400}.contact-methods small{color:var(--muted);margin-top:.3rem}.form-heading{margin-bottom:1.5rem}.form-heading h2{font-family:var(--serif);font-size:clamp(2.2rem,4vw,4rem);line-height:1;margin:.2rem 0}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--orange);outline:3px solid rgba(191,59,32,.18)}.consent-field label{display:grid;grid-template-columns:auto 1fr;gap:.65rem;align-items:start;font-size:.78rem;font-weight:500}.consent-field input{width:auto;margin-top:.25rem}.form-actions{display:flex;gap:.7rem;flex-wrap:wrap}.form-status[data-state=error]{color:#9a1d0c;font-weight:750}.form-status[data-state=success]{color:#0b6b3a;font-weight:750}
.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.footer-contact>a{font-weight:760;text-decoration:none}.social-links{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.75rem}.social-links a{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.footer-location{max-width:360px;font-size:.74rem;color:var(--muted);line-height:1.45}.footer-legal{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.7rem}.footer-legal a,.link-button{font:inherit;color:inherit;background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.footer-legal a:hover,.link-button:hover{color:var(--orange)}
.whatsapp-float{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:1600;display:flex;align-items:center;gap:.55rem;background:var(--whatsapp);color:#fff;padding:.78rem 1rem;border-radius:999px;text-decoration:none;box-shadow:0 12px 34px rgba(0,0,0,.28);font-size:.76rem;letter-spacing:.04em}.whatsapp-float span{font-size:1.3rem;transform:rotate(-18deg)}.whatsapp-float:hover{transform:translateY(-2px)}
.cookie-banner{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:2000;width:min(calc(100% - 36px),960px);display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:center;background:#fff;color:var(--ink);border:1px solid var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.26);padding:1.2rem}.cookie-banner[hidden]{display:none}.cookie-banner strong{font-family:var(--serif);font-size:1.35rem}.cookie-banner p{font-size:.82rem;line-height:1.45;margin:.25rem 0}.cookie-banner a{font-size:.72rem;font-weight:750}.cookie-actions{display:flex;gap:.65rem}.cookie-actions .btn{white-space:nowrap}
.legal-hero{background:var(--cream)}.legal-content section{padding:0 0 3rem;margin-bottom:3rem;border-bottom:1px solid var(--line)}.legal-content h2{font-family:var(--serif);font-size:clamp(2rem,3vw,3.2rem);line-height:1.05}.legal-content code{background:#fff;padding:.15rem .3rem}.legal-content li{margin:.6rem 0}.legal-content .policy-note{font-size:.9rem}.estimate-result .btn{margin-top:1.2rem}.estimate-result>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.scope-grid{grid-template-columns:repeat(2,1fr)}
.section,.inner-hero{content-visibility:auto;contain-intrinsic-size:1px 900px}.hero,.site-header,.proof,.marquee{content-visibility:visible}.card img,.visual img,.case-image{background:#e7e1d7}.source-box{overflow-wrap:anywhere}
@media(max-width:1180px){.header-location{display:none}.main-nav{gap:.75rem}.main-nav a{font-size:.62rem}}
@media(max-width:980px){.home-hero .hero-grid,.about-hero .inner-grid{grid-template-columns:1fr}.hero-portfolio{margin-top:2rem}.social-panel{grid-template-columns:1fr}.skill-grid,.scope-grid{grid-template-columns:1fr}.cookie-banner{grid-template-columns:1fr}.cookie-actions{justify-content:flex-start}.whatsapp-float b{display:none}.whatsapp-float{width:50px;height:50px;justify-content:center;padding:0}.footer-contact{margin-top:.5rem}}
@media(max-width:640px){.home-hero h1{font-size:clamp(3.1rem,15vw,5.2rem)}.hero-contact{display:grid}.hero-portfolio:after{font-size:.48rem}.section-actions{align-items:stretch}.section-actions .btn{width:100%}.cookie-banner{bottom:10px;width:calc(100% - 20px);padding:1rem;max-height:calc(100vh - 20px);overflow:auto}.cookie-actions{display:grid;grid-template-columns:1fr}.cookie-actions .btn{width:100%}.whatsapp-float{bottom:12px;right:12px}.cookie-banner:not([hidden])~.site-footer{}.form-actions .btn{width:100%}.contact-methods strong{font-size:1.05rem;overflow-wrap:anywhere}.skill-grid,.scope-grid{grid-template-columns:1fr}.content-layout{gap:2rem}.fine{line-height:1.5}}
@media print{.site-header,.site-footer,.footer-cta,.whatsapp-float,.cookie-banner,.marquee,.button-row{display:none!important}body{background:#fff}.section,.inner-hero{content-visibility:visible}.container,.narrow{width:100%}}


/* Final manual refinement - typography, interaction, About page and WhatsApp */
:root{
  --serif:"Iowan Old Style","Baskerville","Times New Roman",ui-serif,serif;
  --sans:"Avenir Next","Helvetica Neue",Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --focus-ring:rgba(191,59,32,.24);
  --wa-green:#25d366;
  --wa-deep:#0f392d;
}
html{scroll-padding-top:108px;-webkit-text-size-adjust:100%}
body{text-rendering:optimizeLegibility;font-kerning:normal}
::selection{background:var(--acid);color:var(--ink)}
h1,h2,h3,.display{text-wrap:balance}
p,li,figcaption{text-wrap:pretty}
a,button{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
main,.site-footer,.footer-cta{position:relative;z-index:1}
.reveal{opacity:1;transform:none}
.section,.inner-hero{content-visibility:visible;contain:none}
.inner-grid>* , .hero-grid>* , .section-head>* , .footer-grid>* , .about-hero-grid>*{min-width:0}
.site-header{box-shadow:0 1px 0 rgba(17,17,15,.04)}
.main-nav a{position:relative;padding:.35rem 0}
.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:currentColor;transition:right .22s ease}
.main-nav a:hover:after,.main-nav a[aria-current=page]:after{right:0}
.main-nav a[aria-current=page]{border-bottom:0}
.btn{position:relative;overflow:hidden;isolation:isolate;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);transition:transform .22s ease,background-color .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease}
.btn:active{transform:translateY(0)}
.card{transition:border-color .24s ease,transform .24s ease,box-shadow .24s ease}
.card:hover{border-color:rgba(17,17,15,.42)}
.visual,.card-image,.about-portrait-frame{overflow:hidden}
.visual img,.card-image img,.about-portrait img{transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.visual:hover img,.about-portrait:hover img{transform:scale(1.015)}
:focus-visible{outline:3px solid var(--orange);outline-offset:4px;box-shadow:0 0 0 7px var(--focus-ring)}

/* About page */
.about-hero-premium{padding-top:clamp(2.2rem,4vw,4.5rem);padding-bottom:clamp(4rem,8vw,8.5rem);background:linear-gradient(135deg,var(--paper) 0%,#f7f2ea 62%,#eadfd1 100%)}
.about-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.66fr);gap:clamp(2.5rem,7vw,8rem);align-items:center}
.about-hero-copy h1{font-family:var(--serif);font-size:clamp(3.25rem,6.35vw,7.25rem);font-weight:400;line-height:.91;letter-spacing:-.058em;margin:0;max-width:950px}
.about-hero-copy .lede{max-width:760px;margin-top:1.65rem}
.about-hero-details{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:2.2rem 0 0;background:var(--line);border:1px solid var(--line)}
.about-hero-details div{background:rgba(245,240,232,.9);padding:1rem}
.about-hero-details dt{font-size:.61rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.about-hero-details dd{font-family:var(--serif);font-size:1.08rem;line-height:1.2;margin:.3rem 0 0}
.about-portrait{margin:0;position:relative}
.about-portrait-frame{position:relative;background:var(--ink);padding:14px 14px 0;box-shadow:var(--shadow)}
.about-portrait-frame:before{content:"";position:absolute;inset:0 0 auto auto;width:42%;height:16px;background:var(--acid);z-index:2}
.about-portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 28%;filter:grayscale(1);background:#d8d1c8}
.about-portrait figcaption{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;padding:1rem 0 0}
.about-portrait figcaption strong{font-family:var(--serif);font-size:1.2rem;font-weight:400}
.about-portrait figcaption span{font-size:.61rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);text-align:right}
.portrait-stamp{position:absolute;right:-22px;bottom:68px;width:112px;height:112px;display:grid;place-items:center;text-align:center;background:var(--acid);color:var(--ink);border-radius:50%;font-size:.62rem;font-weight:900;line-height:1.15;letter-spacing:.08em;text-transform:uppercase;transform:rotate(7deg);box-shadow:0 14px 34px rgba(17,17,15,.16)}
.about-profile-strip{background:var(--ink);color:var(--paper);border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.about-profile-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.about-profile-grid>div{padding:1.55rem 1.25rem;border-right:1px solid rgba(255,255,255,.17)}
.about-profile-grid>div:first-child{padding-left:0}
.about-profile-grid>div:last-child{border-right:0;padding-right:0}
.about-profile-grid span{display:block;color:var(--acid);font-size:.62rem;font-weight:900;letter-spacing:.1em}
.about-profile-grid strong{display:block;font-family:var(--serif);font-size:1.35rem;line-height:1.1;margin:.5rem 0}
.about-profile-grid p{font-size:.78rem;line-height:1.45;color:#cfcac0;margin:0}
.about-editorial-section{background:var(--paper)}
.about-content-layout{grid-template-columns:220px minmax(0,900px);justify-content:center}
.about-content .about-chapter{padding-bottom:clamp(5rem,9vw,9rem)}
.about-chapter-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.62fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.about-chapter-grid h2{margin-top:0}
.about-quote{margin:0;background:var(--ink);color:var(--paper);padding:clamp(1.6rem,3vw,2.6rem);position:relative}
.about-quote:before{content:"“";font-family:var(--serif);font-size:5rem;line-height:.6;color:var(--acid);display:block;margin-bottom:1.1rem}
.about-quote p{font-family:var(--serif);font-size:clamp(1.5rem,2.4vw,2.15rem);line-height:1.08;margin:0}
.about-quote cite{display:block;margin-top:1.5rem;font-style:normal;font-size:.64rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:#cfcac0}
.about-wide-image{margin:3.5rem 0 0}
.about-wide-image img{width:100%;aspect-ratio:16/7;object-fit:cover;object-position:center 38%;filter:grayscale(1)}
.about-wide-image figcaption{font-size:.66rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);padding-top:.7rem}
.about-process-grid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:0;margin:2.6rem 0 0;background:var(--line);border:1px solid var(--line)}
.about-process-grid li{background:var(--paper);padding:1.3rem;margin:0;min-height:220px}
.about-process-grid span{display:block;font-family:var(--serif);font-size:2.6rem;line-height:1;color:var(--orange)}
.about-process-grid strong{display:block;font-family:var(--serif);font-size:1.35rem;line-height:1.1;margin:1.8rem 0 .65rem}
.about-process-grid p{font-size:.84rem;line-height:1.48;color:var(--muted);margin:0}
.about-capability-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:2.4rem}
.about-capability-grid article{background:var(--paper);padding:1.45rem}
.about-capability-grid span{font-size:.61rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--orange)}
.about-capability-grid h3{font-family:var(--serif);font-size:1.55rem;line-height:1.08;margin:.65rem 0}
.about-capability-grid p{font-size:.87rem;line-height:1.5;color:var(--muted);margin:0}
.tools-heading{display:grid;grid-template-columns:.75fr 1.25fr;gap:2rem;align-items:end;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--line)}
.tools-heading p{margin:0}
.about-tools{margin-top:1.5rem}
.about-principles-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(290px,.65fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.about-contact-card{background:var(--ink);color:var(--paper);padding:clamp(1.5rem,3vw,2.4rem);box-shadow:var(--shadow)}
.about-contact-card h3{font-family:var(--serif);font-size:clamp(1.7rem,2.7vw,2.5rem);font-weight:400;line-height:1.03;margin:.5rem 0 1.6rem}
.about-contact-card>a{display:block;color:var(--paper);font-size:.9rem;font-weight:760;text-decoration:none;padding:.45rem 0;border-bottom:1px solid rgba(255,255,255,.18);overflow-wrap:anywhere}
.about-signature{font-family:var(--serif);font-size:1.6rem;font-style:italic;margin:2rem 0 1rem;color:var(--acid)}
.about-contact-card .social-panel{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.18)}
.about-contact-card .social-panel a{background:#1b1b18;color:var(--paper)}
.about-contact-card .social-panel a:hover{background:var(--acid);color:var(--ink)}
.about-contact-card .social-panel span{color:inherit}
.about-selected-work{background:var(--paper-soft);border-top:1px solid var(--line)}

/* Premium WhatsApp control */
.whatsapp-float{right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));min-height:62px;padding:8px 18px 8px 8px;gap:11px;background:linear-gradient(135deg,var(--wa-deep),#0b5b45);border:1px solid rgba(255,255,255,.22);border-radius:999px;box-shadow:0 18px 48px rgba(8,43,32,.32),0 4px 12px rgba(0,0,0,.16);letter-spacing:0;transition:transform .24s ease,box-shadow .24s ease,background .24s ease}
.whatsapp-float:hover{transform:translateY(-4px);background:linear-gradient(135deg,#124b3a,#087c58);box-shadow:0 24px 60px rgba(8,43,32,.38),0 5px 14px rgba(0,0,0,.18)}
.whatsapp-float:active{transform:translateY(-1px)}
.wa-icon{position:relative;display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:50%;background:var(--wa-green);color:#fff;transform:none!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.wa-icon:before{content:"";position:absolute;inset:-5px;border:1px solid rgba(37,211,102,.55);border-radius:50%;animation:wa-pulse 2.8s ease-out infinite}
.wa-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.wa-text{display:flex;flex-direction:column;line-height:1.05;transform:none!important}
.wa-text small{font-size:.58rem;font-weight:700;color:#cde7dc;letter-spacing:.02em;text-transform:none}
.wa-text strong{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;margin-top:.25rem}
body.consent-open .whatsapp-float{bottom:168px}
@keyframes wa-pulse{0%{opacity:.65;transform:scale(.86)}65%,100%{opacity:0;transform:scale(1.28)}}

@media(max-width:1100px){
  .about-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.65fr);gap:3rem}
  .about-profile-grid{grid-template-columns:repeat(2,1fr)}
  .about-profile-grid>div:nth-child(2){border-right:0;padding-right:0}
  .about-profile-grid>div:nth-child(3){padding-left:0;border-top:1px solid rgba(255,255,255,.17)}
  .about-profile-grid>div:nth-child(4){border-top:1px solid rgba(255,255,255,.17)}
  .about-process-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:980px){
  body.nav-open{overflow:hidden}
  .main-nav.open{max-height:calc(100vh - 78px);overflow:auto;box-shadow:0 24px 50px rgba(17,17,15,.14)}
  .about-hero-grid,.about-chapter-grid,.about-principles-grid{grid-template-columns:1fr}
  .about-portrait{width:min(100%,560px);margin-top:1rem}
  .about-content-layout{grid-template-columns:1fr}
  .about-content-layout .sticky-nav{background:var(--paper);position:sticky;top:78px;z-index:5;padding:.45rem 0}
  .portrait-stamp{right:16px;bottom:76px}
  .wa-text{display:none}
  .whatsapp-float{width:62px;height:62px;min-height:62px;padding:8px;justify-content:center}
  .wa-icon{width:46px;height:46px;flex-basis:46px}
  body.consent-open .whatsapp-float{bottom:246px}
}
@media(max-width:640px){
  html{scroll-padding-top:84px}
  .about-hero-premium{padding-top:1.4rem}
  .about-hero-copy h1{font-size:clamp(3.05rem,14.4vw,5.2rem)}
  .about-hero-details{grid-template-columns:1fr}
  .about-portrait-frame{padding:10px 10px 0}
  .about-portrait figcaption{align-items:flex-start;flex-direction:column}
  .about-portrait figcaption span{text-align:left}
  .portrait-stamp{width:92px;height:92px;right:4px;bottom:92px;font-size:.55rem}
  .about-profile-grid{grid-template-columns:1fr}
  .about-profile-grid>div,.about-profile-grid>div:first-child,.about-profile-grid>div:nth-child(2),.about-profile-grid>div:nth-child(3),.about-profile-grid>div:nth-child(4){padding:1.25rem 0;border-right:0;border-top:1px solid rgba(255,255,255,.17)}
  .about-profile-grid>div:first-child{border-top:0}
  .about-process-grid,.about-capability-grid,.tools-heading{grid-template-columns:1fr}
  .about-process-grid li{min-height:0}
  .about-wide-image img{aspect-ratio:4/3}
  .about-content-layout .sticky-nav{top:68px}
  .whatsapp-float{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:58px;height:58px;min-height:58px}
  .wa-icon{width:42px;height:42px;flex-basis:42px}
  body.consent-open .whatsapp-float{bottom:min(330px,44vh)}
}
@media(prefers-reduced-motion:reduce){.wa-icon:before{animation:none}.main-nav a:after{transition:none}.visual img,.card-image img,.about-portrait img,.whatsapp-float{transition:none}}


/* ==========================================================================\n   10.08 EDITORIAL CONCEPT SYSTEM\n   Rebuild of the supplied Adobe Illustrator concept. The licensed Myriad Pro\n   family is used through local()/Adobe Fonts when available. Arimo and Arial\n   provide robust fallbacks without distributing font files.\n   ========================================================================== */
@font-face{font-family:"Myriad Pro";src:local("Myriad Pro"),local("MyriadPro-Regular");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Myriad Pro";src:local("Myriad Pro Semibold"),local("MyriadPro-Semibold");font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:"Myriad Pro";src:local("Myriad Pro Bold"),local("MyriadPro-Bold");font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:"Myriad Pro";src:local("Myriad Pro Black"),local("MyriadPro-Black");font-style:normal;font-weight:900;font-display:swap}
@font-face{font-family:"Myriad Pro";src:local("Myriad Pro Semibold Italic"),local("MyriadPro-SemiboldIt");font-style:italic;font-weight:600;font-display:swap}
:root{--bp-black:#000;--bp-charcoal:#303030;--bp-gray:#606060;--bp-gray-2:#8b8b8b;--bp-white:#fff;--bp-pink:#ffbcd6;--bp-pink-strong:#ffaed0;--bp-pink-soft:#fff0f6;--bp-pink-cloud:#ffe8f1;--bp-line:#2d2d2d;--bp-max:1280px;--bp-gutter:clamp(22px,3.6vw,52px);--bp-font:"Myriad Pro","Arimo","Arial",sans-serif;--sans:var(--bp-font);--serif:var(--bp-font);--paper:#fff;--ink:#303030;--muted:#6b6b6b;--line:rgba(0,0,0,.24);--orange:#ff8fbd;--acid:var(--bp-pink);--green:#2d2d2d;--rose:var(--bp-pink);--lilac:var(--bp-pink-soft);--cream:#fff;--max:var(--bp-max)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px;background:var(--bp-black)}body{margin:0;background:var(--bp-white);color:var(--bp-charcoal);font-family:var(--bp-font);font-size:18px;line-height:1.28;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}body.nav-open{overflow:hidden}::selection{background:var(--bp-pink);color:var(--bp-black)}img,svg{max-width:100%;display:block}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}button,input,select,textarea{font:inherit}button{color:inherit}.container{width:min(calc(100% - (var(--bp-gutter) * 2)),var(--bp-max));margin-inline:auto}.narrow{width:min(calc(100% - (var(--bp-gutter) * 2)),860px);margin-inline:auto}.skip-link,.skip{position:fixed;left:18px;top:-100px;z-index:10000;background:var(--bp-pink);color:var(--bp-black);padding:10px 16px;border-radius:999px;text-decoration:none;font-weight:700}.skip-link:focus,.skip:focus{top:18px}.eyebrow{display:flex;align-items:center;gap:.62rem;margin:0 0 1.2rem;color:var(--bp-gray-2);font-size:.72rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.eyebrow:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex:0 0 auto}.display,.hero h1,.inner-hero h1,.section-head h2,.content h2,.card h3,.related-card h3{font-family:var(--bp-font)}h1,h2,h3,h4,p{overflow-wrap:break-word}h1,h2,h3{font-weight:700;letter-spacing:-.035em}p{margin-top:0}.lede,.lead{font-size:clamp(1.08rem,1.7vw,1.38rem);line-height:1.35;color:var(--bp-gray)}.small{font-size:.84rem}.muted{color:var(--bp-gray)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:44px;padding:.62rem 1.35rem;border:1px solid var(--bp-line);border-radius:999px;background:var(--bp-white);color:var(--bp-charcoal);font-size:1rem;font-weight:400;letter-spacing:0;text-transform:none;text-decoration:none;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease}.btn:after{content:"↗";font-size:.92em;line-height:1}.btn:hover{transform:translateY(-2px);background:var(--bp-pink);color:var(--bp-black);border-color:var(--bp-black)}.btn.btn-dark{background:var(--bp-black);color:var(--bp-white);border-color:var(--bp-black)}.btn.btn-dark:hover{background:var(--bp-pink);color:var(--bp-black)}.btn.btn-light{background:var(--bp-white);color:var(--bp-black)}.btn.secondary{background:transparent;color:inherit}.button-row,.buttons{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem}.text-link{font-weight:500;text-underline-offset:.22em}
.site-header{position:sticky;top:0;z-index:1000;background:var(--bp-black);color:var(--bp-white);border:0;border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:none}.header-inner{width:min(calc(100% - (var(--bp-gutter) * 2)),var(--bp-max));height:102px;margin-inline:auto;display:grid;grid-template-columns:minmax(245px,1.18fr) minmax(620px,2.8fr) auto;align-items:center;gap:1.6rem}.brand{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;column-gap:13px;color:inherit;text-decoration:none;line-height:1}.brand:before{content:"BP/A";display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--bp-pink);color:var(--bp-black);font-size:.65rem;font-weight:700;letter-spacing:.02em}.brand strong{display:block;font-size:1.1rem;font-weight:700;letter-spacing:-.015em;text-transform:uppercase;white-space:nowrap}.brand span{display:block;margin-top:.28rem;font-size:.72rem;font-style:italic;font-weight:400;letter-spacing:0;text-transform:none;color:#f5f5f5;white-space:nowrap}.main-nav{display:flex;align-items:center;justify-content:center;gap:clamp(1.2rem,2.5vw,2.7rem)}.main-nav a,.lang{position:relative;color:var(--bp-white);font-size:1rem;font-weight:400;letter-spacing:0;text-transform:none;text-decoration:none;white-space:nowrap}.main-nav a:after,.lang:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--bp-pink);transition:right .2s ease}.main-nav a:hover:after,.main-nav a[aria-current="page"]:after,.lang:hover:after{right:0}.nav-wrap{display:flex;align-items:center;justify-content:flex-end;gap:1rem}.header-location{display:none}.lang{font-size:.82rem}.header-cta{min-height:44px;padding:.58rem 1.55rem;background:var(--bp-white)!important;color:var(--bp-charcoal)!important;border-color:var(--bp-white)!important;white-space:nowrap}.header-cta:after{display:none}.header-cta:hover{background:var(--bp-pink)!important;border-color:var(--bp-pink)!important}.menu-button{display:none;width:48px;height:48px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:transparent;padding:12px}.menu-button span{display:block;height:1px;background:#fff;margin:5px 0;transition:.2s}
.site-footer{background:var(--bp-black);color:var(--bp-white);padding:58px 0 28px;border:0}.footer-grid{display:grid;grid-template-columns:1.45fr .8fr 1fr;gap:5rem;padding-bottom:36px}.site-footer .brand{display:grid;grid-template-columns:46px minmax(0,1fr)}.site-footer .brand:before{width:42px;height:42px;font-size:.58rem}.site-footer .brand strong{font-size:1rem}.site-footer .brand span{font-size:.66rem}.footer-location{grid-column:2;margin:.9rem 0 0;color:#bfbfbf;font-size:.68rem;line-height:1.4}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem 2.4rem;align-content:start}.footer-nav a,.footer-contact>a,.social-links a,.footer-legal a,.link-button{color:var(--bp-white);font-size:1rem;text-decoration:none}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:1.2rem}.footer-contact>a{font-weight:600}.social-links{display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:.45rem}.social-links a,.footer-legal a,.link-button{text-decoration:underline;font-size:.82rem;background:none;border:0;padding:0;cursor:pointer}.footer-legal{display:flex;flex-wrap:wrap;gap:1rem;border-top:1px solid rgba(255,255,255,.78);border-bottom:1px solid rgba(255,255,255,.78);padding:18px 0}.fine{display:grid;grid-template-columns:1fr 1.5fr auto;gap:2rem;align-items:center;padding-top:20px;color:#bfbfbf;font-size:.68rem;line-height:1.35}.fine a{color:var(--bp-white)}.footer-cta{background:linear-gradient(180deg,var(--bp-pink) 0%,#fff5f9 34%,#fff 72%);color:var(--bp-charcoal);padding:clamp(78px,9vw,132px) 0}.footer-cta-grid{display:grid;grid-template-columns:1.6fr .7fr;gap:4rem;align-items:center}.footer-cta h2{margin:0;font-size:clamp(3.5rem,7.4vw,7.6rem);line-height:.86;text-transform:uppercase;font-weight:700;letter-spacing:-.055em}.footer-cta p{color:var(--bp-gray);font-size:1rem;max-width:420px}
.breadcrumbs{background:var(--bp-black);color:#c8c8c8;border-bottom:1px solid rgba(255,255,255,.16);padding:12px 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.breadcrumbs a{color:var(--bp-white)}.inner-hero{position:relative;background:var(--bp-black);color:var(--bp-white);padding:clamp(70px,8vw,122px) 0 clamp(76px,9vw,138px);overflow:hidden}.inner-hero:after{content:"";position:absolute;right:-60px;bottom:-180px;width:360px;height:360px;border-radius:50%;background:var(--bp-pink);opacity:.12;pointer-events:none}.inner-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.72fr);gap:clamp(3rem,7vw,7rem);align-items:end}.inner-hero h1{max-width:880px;margin:0;font-size:clamp(3.9rem,7.1vw,7.8rem);font-weight:700;line-height:.84;letter-spacing:-.055em;text-transform:uppercase}.inner-hero .lede{max-width:640px;margin:2rem 0 0;color:#bdbdbd}.inner-hero .visual{padding:0;border:0;background:transparent}.inner-hero .visual img,.visual img{width:100%;aspect-ratio:1.38/1;object-fit:cover;border-radius:26px;border:1px solid rgba(255,255,255,.65)}.visual{padding:14px;border-radius:30px;background:var(--bp-pink)}.visual img{border-color:var(--bp-black)}body:not(.home-concept) main{background:var(--bp-white)}body:not(.home-concept) main>.section:nth-of-type(even):not(.dark):not(.green){background:var(--bp-pink-soft)}.section{padding:clamp(78px,9vw,132px) 0}.section.tight{padding:60px 0}.dark{background:var(--bp-black)!important;color:var(--bp-white)}.dark .eyebrow{color:var(--bp-pink)}.dark .lede,.dark .lead,.dark .muted,.dark p{color:#bfbfbf}.green{background:var(--bp-gray)!important;color:#fff}.acid,.lilac{background:var(--bp-pink)!important}.section-head{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:clamp(2rem,7vw,7rem);align-items:end;margin-bottom:clamp(42px,6vw,78px);padding-top:16px;border-top:5px solid currentColor}.section-head h2,.content h2{margin:0;font-size:clamp(3.1rem,6.3vw,6.8rem);line-height:.86;letter-spacing:-.05em;text-transform:uppercase;font-weight:700}.section-head>p{max-width:510px;margin:0;color:var(--bp-gray)}.dark .section-head>p{color:#bfbfbf}.grid-2,.grid-3,.grid-4{display:grid;gap:22px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{position:relative;min-height:100%;padding:1.5rem;border:1px solid var(--bp-line);border-radius:24px;background:var(--bp-white);color:var(--bp-charcoal);overflow:hidden}.dark .card{background:#0d0d0d;color:#fff;border-color:#6f6f6f}.card h3{margin:.75rem 0;font-size:clamp(1.5rem,2.2vw,2.15rem);line-height:1.02;letter-spacing:-.035em}.card p{color:var(--bp-gray);font-size:.96rem}.dark .card p{color:#bfbfbf}.card-number{font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.card-image{padding:0;background:var(--bp-white)}.card-image img{width:100%;aspect-ratio:1.26/1;object-fit:cover;border-bottom:1px solid var(--bp-line);transition:transform .35s ease}.card-image:hover img{transform:scale(1.018)}.card-copy{padding:1.3rem 1.4rem 1.5rem}.concept-label{display:inline-flex;padding:.28rem .62rem;border:1px solid var(--bp-line);border-radius:999px;background:var(--bp-white);color:var(--bp-charcoal);font-size:.68rem;font-weight:400;letter-spacing:0;text-transform:none}.outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bp-line);border:1px solid var(--bp-line);margin-top:3rem}.outcome{background:#fff;padding:1.6rem}.outcome strong{display:block;font-size:1.6rem;line-height:1.05}.content-layout{display:grid;grid-template-columns:230px minmax(0,860px);gap:clamp(3rem,8vw,8rem);align-items:start;justify-content:center}.sticky-nav{position:sticky;top:126px}.sticky-nav a{display:block;padding:.72rem 0;border-bottom:1px solid var(--bp-line);font-size:.8rem;font-weight:600;text-decoration:none}.content section{scroll-margin-top:130px;padding-bottom:clamp(72px,8vw,120px)}.content h2{font-size:clamp(2.8rem,5.2vw,5.4rem);margin-bottom:1.45rem;padding-top:12px;border-top:4px solid var(--bp-line)}.content h3{font-size:clamp(1.55rem,2.5vw,2.35rem);line-height:1.05}.content p,.content li{font-size:1.03rem;line-height:1.5}.source-box,.policy-note{padding:1.25rem 1.4rem;background:var(--bp-pink-soft);border-left:6px solid var(--bp-pink);margin:2rem 0}.policy-note{border:1px solid var(--bp-line);background:#fff}.faq-list details{border-top:1px solid var(--bp-line);padding:1.2rem 0}.faq-list details:last-child{border-bottom:1px solid var(--bp-line)}.faq-list summary{font-size:1.08rem;font-weight:600}.related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.related-card{position:relative;border-top:4px solid var(--bp-line);padding-top:1rem}.related-card h3{font-size:1.5rem}.facts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--bp-line)}.fact{padding:1.35rem;border-right:1px solid var(--bp-line)}.case-image{width:100%;aspect-ratio:16/7;object-fit:cover;border-radius:28px;margin-top:2rem;border:1px solid var(--bp-line)}.case-gallery{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.case-gallery img{width:100%;height:100%;min-height:350px;object-fit:cover;border-radius:24px;border:1px solid var(--bp-line)}.price-table{width:100%;border-collapse:collapse}.price-table th,.price-table td{text-align:left;padding:1rem .7rem;border-bottom:1px solid var(--bp-line);vertical-align:top}.estimator{display:grid;grid-template-columns:1fr .8fr;gap:2rem;border:1px solid var(--bp-line);border-radius:26px;padding:clamp(1.5rem,4vw,3rem);background:#fff}.field{margin-bottom:1.2rem}.field label{display:block;margin-bottom:.45rem;font-size:.86rem;font-weight:600}.field input,.field select,.field textarea{width:100%;padding:.9rem 1rem;border:1px solid var(--bp-line);border-radius:12px;background:#fff;color:#222}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid var(--bp-pink);outline-offset:1px}.estimate-result{background:var(--bp-black);color:#fff;padding:2rem;border-radius:22px;display:flex;flex-direction:column;justify-content:center}.estimate-result strong{font-size:clamp(2.2rem,4vw,4rem);font-weight:600}.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(3rem,8vw,8rem);align-items:start}.contact-form{background:var(--bp-pink-soft);border:1px solid var(--bp-line);border-radius:28px;padding:clamp(1.5rem,4vw,3rem)}.contact-aside{position:sticky;top:132px}.contact-methods a{display:block;padding:1rem 0;border-bottom:1px solid var(--bp-line);font-size:1.12rem}
.about-hero-premium{background:linear-gradient(180deg,#fff 0%,var(--bp-pink-soft) 48%,var(--bp-pink) 100%);color:var(--bp-charcoal)}.about-hero-premium:after{display:none}.about-hero-grid{display:grid;grid-template-columns:1.08fr .72fr;gap:clamp(3rem,8vw,8rem);align-items:center}.about-hero-copy h1{font-size:clamp(3.7rem,7vw,7.3rem);text-transform:uppercase;line-height:.86}.about-hero-copy .lede{color:var(--bp-gray)}.about-portrait-frame{background:var(--bp-black);padding:0;border:0;border-radius:0;box-shadow:none}.about-portrait-frame:before{display:none}.about-portrait img{filter:grayscale(1);aspect-ratio:4/5;object-fit:cover;border:1px solid var(--bp-line)}.portrait-stamp{background:var(--bp-pink);color:#000}.about-profile-strip{background:var(--bp-gray);color:#fff}.about-profile-grid>div{border-color:rgba(255,255,255,.3)}.about-profile-grid span{color:var(--bp-pink)}.about-editorial-section{background:#fff}.about-quote{background:var(--bp-black);color:#fff;border-radius:24px}.about-quote:before,.about-signature{color:var(--bp-pink)}.about-wide-image img{border-radius:24px}.about-process-grid li,.about-capability-grid article{background:#fff}.about-contact-card{background:var(--bp-black);color:#fff;border-radius:26px}.about-selected-work{background:var(--bp-pink-soft)}
.whatsapp-float{position:fixed;z-index:1200;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;min-height:62px;padding:8px 18px 8px 8px;border:1px solid var(--bp-black);border-radius:999px;background:var(--bp-pink);color:var(--bp-black);text-decoration:none;box-shadow:0 16px 40px rgba(0,0,0,.22);transition:transform .22s ease,background .22s ease}.whatsapp-float:hover{transform:translateY(-4px);background:#fff}.wa-icon{position:relative;display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:50%;background:var(--bp-black);color:#fff;box-shadow:none}.wa-icon:before{content:"";position:absolute;inset:-5px;border:1px solid rgba(0,0,0,.35);border-radius:50%;animation:wa-pulse 2.8s ease-out infinite}.wa-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.wa-text{display:flex;flex-direction:column;line-height:1.02}.wa-text small{font-size:.62rem;color:#333;text-transform:none}.wa-text strong{margin-top:.25rem;font-size:.84rem;letter-spacing:.02em;text-transform:none}body.consent-open .whatsapp-float{bottom:178px}.cookie-banner{position:fixed;z-index:1300;left:20px;right:20px;bottom:20px;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;max-width:1100px;margin:auto;padding:1.25rem 1.4rem;background:#fff;color:#222;border:1px solid #000;border-radius:22px;box-shadow:0 18px 55px rgba(0,0,0,.24)}.cookie-banner[hidden]{display:none}.cookie-banner p{margin:.3rem 0;font-size:.82rem;color:#666}.cookie-actions{display:flex;gap:.65rem;flex-wrap:wrap}.cookie-actions .btn{font-size:.82rem}.cookie-actions .btn:after,.form-actions .btn:after,.contact-form button.btn:after{display:none}
.home-concept{background:var(--bp-white)}.home-concept .site-header{position:relative}.home-concept .site-header .lang{display:none}.bp-home-hero{position:relative;background:var(--bp-black);color:var(--bp-white);min-height:668px;padding:32px 0 40px;overflow:hidden}.bp-home-hero .hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,414px);gap:clamp(4rem,9vw,8.6rem);align-items:start}.bp-hero-copy{min-width:0}.bp-home-hero .eyebrow{color:#979797;margin-bottom:.7rem}.bp-home-hero h1{max-width:none;margin:0;color:#fff;font-size:clamp(4.2rem,6vw,6.1rem);font-weight:700;line-height:.79;letter-spacing:-.045em;text-transform:uppercase}.bp-home-hero h1 .hero-line{display:block;white-space:nowrap}.bp-home-hero h1 em{display:inline;color:var(--bp-pink);font-style:italic;font-weight:600}.bp-hero-intro{max-width:490px;margin:2.4rem 0 0;color:#b8b8b8;font-size:1.16rem;line-height:1.35}.bp-home-hero .button-row{margin-top:2.5rem;gap:2.2rem}.bp-home-hero .btn{background:var(--bp-pink);border-color:var(--bp-pink);color:#222}.bp-home-hero .btn:hover{background:#fff;border-color:#fff}.bp-hero-contact{display:flex;flex-wrap:wrap;gap:.95rem 1.35rem;margin:4.6rem 0 0;color:#9a9a9a;font-size:.82rem}.bp-hero-contact a{text-decoration:none}.bp-hero-contact a:first-child:before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--bp-pink)}.bp-hero-media{align-self:start;padding-top:28px}.bp-hero-media-top{display:flex;justify-content:space-between;gap:1rem;margin-bottom:7px;color:#b8b8b8;font-size:.83rem}.bp-hero-media figure{margin:0}.bp-hero-media img{width:100%;aspect-ratio:1/1;object-fit:cover;border:0}.bp-hero-tags,.bp-project-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.bp-tag{display:inline-flex;align-items:center;min-height:24px;padding:2px 10px;border:1px solid currentColor;border-radius:999px;background:#fff;color:#2f2f2f;font-size:.68rem;line-height:1}.bp-hero-square{position:absolute;right:33px;bottom:42px;width:42px;height:42px;border-radius:10px;background:#fff}
.bp-proof{position:relative;background:#fff;padding:64px 0 66px;color:#303030}.bp-proof-circles{position:absolute;right:7%;top:34px;display:flex;gap:10px}.bp-proof-circles i{display:block;width:105px;height:105px;border-radius:50%;background:var(--bp-pink-soft)}.bp-proof-ladder{position:relative;z-index:1}.bp-proof-row{display:grid;grid-template-columns:repeat(4,1fr);min-height:92px;border-bottom:2px solid #3b3b3b;align-items:center}.bp-proof-row>div{max-width:280px}.bp-proof-row:nth-child(1)>div{grid-column:1}.bp-proof-row:nth-child(2)>div{grid-column:2}.bp-proof-row:nth-child(3)>div{grid-column:3}.bp-proof-row:nth-child(4)>div{grid-column:4}.bp-proof-row strong{display:block;font-size:1.45rem;line-height:1.03}.bp-proof-row span{display:block;margin-top:4px;color:#666;font-size:1.12rem;line-height:1.18}.bp-ticker{overflow:hidden;background:#000;color:#fff;padding:28px 0;white-space:nowrap}.bp-ticker-track{display:flex;justify-content:space-around;gap:3rem;min-width:max-content;padding-inline:3rem;font-size:1rem;animation:bp-ticker 28s linear infinite}@keyframes bp-ticker{to{transform:translateX(-50%)}}
.bp-featured{position:relative;overflow:hidden;background:var(--bp-pink);padding:70px 0 56px;color:#303030}.bp-featured .section-intro{display:grid;grid-template-columns:1.35fr .65fr;gap:4rem;align-items:end;min-height:266px;margin-bottom:38px}.bp-featured h2{max-width:none;margin:0;font-size:clamp(3.5rem,4.7vw,4.8rem);line-height:.9;text-transform:uppercase;letter-spacing:-.045em;white-space:nowrap}.bp-featured .section-intro>p{max-width:480px;margin:0;color:#666;font-size:1rem}.bp-featured-track{display:grid;grid-template-columns:280px 300px 300px 280px;gap:70px;width:1360px;margin:0 auto;align-items:end}.bp-feature-card{min-width:0}.bp-feature-card h3{margin:0 0 8px;font-size:1.35rem;letter-spacing:-.02em}.bp-feature-card>a{display:block;color:inherit;text-decoration:none}.bp-feature-frame{position:relative;overflow:hidden;aspect-ratio:1/1;border:1px solid #333;border-radius:28px;background:#fff}.bp-feature-frame img{width:100%;height:100%;object-fit:cover}.bp-feature-card.is-ghost .bp-feature-frame{background:#fff}.bp-feature-card.is-ghost .bp-project-tags{position:absolute;left:15px;right:15px;bottom:14px}.bp-feature-card small{display:block;margin:9px 0 0 20px;color:#696969;font-size:.72rem}.bp-feature-actions{display:flex;justify-content:center;align-items:center;gap:4.5rem;margin-top:72px}.bp-feature-actions .btn{background:#fff;border-color:#fff}.bp-watermark{position:absolute;left:-18px;right:-18px;bottom:-58px;color:rgba(255,255,255,.26);font-size:clamp(9rem,16.4vw,15rem);font-weight:700;line-height:.72;letter-spacing:-.065em;text-transform:uppercase;white-space:nowrap;pointer-events:none}
.bp-services{background:#fff;padding:74px 0 86px}.bp-services-head{display:grid;grid-template-columns:1.22fr .78fr;gap:2rem;align-items:center;padding:30px 0 26px;border-top:6px solid #303030;border-bottom:6px solid #303030}.bp-services-head h2{margin:0;font-size:clamp(4rem,5.7vw,6rem);line-height:.82;text-transform:uppercase;letter-spacing:-.055em;white-space:nowrap}.bp-services-head p{margin:0;color:#666;font-size:1rem;line-height:1.28;max-width:430px;justify-self:end}.bp-service-list{position:relative;margin-top:52px}.bp-service-row{position:relative;display:grid;grid-template-columns:.8fr 1.25fr .72fr 36px;gap:2.3rem;align-items:center;min-height:104px;padding:18px 8px;border-bottom:2px solid #3e3e3e;color:#303030;text-decoration:none}.bp-service-row:first-child{border-top:0}.bp-service-row>span:first-child{font-size:1.3rem}.bp-service-row strong{position:relative;z-index:1;max-width:430px;font-size:1.52rem;line-height:1.02}.bp-service-row p{margin:0;color:#666;font-size:.92rem;line-height:1.2}.bp-service-row b{font-size:1.75rem;font-weight:400}.bp-service-row:nth-child(odd):before{content:"";position:absolute;left:32%;width:120px;height:120px;border-radius:50%;background:var(--bp-pink-soft);transform:translateX(-10%)}.bp-service-row:nth-child(3):after{content:"";position:absolute;left:50%;width:120px;height:120px;border-radius:50%;background:var(--bp-pink-soft)}
.bp-craft{background:#000;color:#fff;padding:74px 0 76px}.bp-craft-head{display:grid;grid-template-columns:1.2fr .65fr;gap:4rem;align-items:end;margin-bottom:48px}.bp-craft h2{max-width:720px;margin:0;font-size:clamp(3.25rem,5.2vw,5.25rem);line-height:.9;text-transform:uppercase;letter-spacing:-.045em}.bp-craft-head p{margin:0;color:#9d9d9d;font-size:1rem}.bp-dot-grid{display:grid;grid-template-columns:repeat(6,18px);gap:4px;margin:36px 0 20px}.bp-dot-grid i{display:block;width:18px;height:18px;border-radius:50%;background:#aaa}.bp-craft-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:28px 32px;align-items:start}.bp-craft-card h3{margin:0 0 8px;font-size:1rem;text-transform:uppercase;letter-spacing:.02em}.bp-craft-card a{display:block;color:#fff;text-decoration:none}.bp-craft-frame{position:relative;overflow:hidden;border-radius:28px;background:#fff;aspect-ratio:2.5/1;border:1px solid #777}.bp-craft-card:nth-child(2) .bp-craft-frame{aspect-ratio:1.8/1}.bp-craft-card:nth-child(3) .bp-craft-frame{aspect-ratio:1.55/1}.bp-craft-card:nth-child(4) .bp-craft-frame{aspect-ratio:2.5/1}.bp-craft-frame img{width:100%;height:100%;object-fit:cover}.bp-craft-frame .bp-project-tags{position:absolute;left:14px;bottom:12px}
.bp-about-home{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fff8fb 11%,var(--bp-pink) 100%);padding:78px 0 260px}.bp-about-grid{display:grid;grid-template-columns:1.25fr .88fr;gap:4rem;align-items:center}.bp-about-home h2{max-width:760px;margin:0;font-size:clamp(3.3rem,5.6vw,5.7rem);line-height:.9;text-transform:uppercase;letter-spacing:-.045em}.bp-about-home .bp-about-copy>p{max-width:570px;margin:2rem 0 0;color:#666;font-size:1rem}.bp-about-list{list-style:none;margin:3.7rem 0 0;padding:0;max-width:650px}.bp-about-list li{padding:13px 0;border-bottom:2px solid #383838;font-size:1.15rem;font-weight:600}.bp-about-home figure{margin:0}.bp-about-home figure img{width:100%;aspect-ratio:.78/1;object-fit:cover;filter:grayscale(1);border:1px solid #333}.bp-about-home .bp-watermark{bottom:-90px;font-size:clamp(6.4rem,11vw,11rem);line-height:.82;white-space:normal}
.bp-process{position:relative;background:var(--bp-gray);color:#fff;padding:64px 0 76px}.bp-process .bp-dot-grid{position:absolute;right:6%;top:8px;margin:0;grid-template-columns:repeat(6,18px)}.bp-process .bp-dot-grid i{background:#a8a8a8}.bp-process-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:6rem;align-items:center}.bp-process h2{max-width:400px;margin:0;font-size:clamp(3rem,4.8vw,4.9rem);line-height:1;text-transform:uppercase;letter-spacing:-.04em}.bp-process-copy p{max-width:430px;margin:3.6rem 0 0;color:#bcbcbc;font-size:1rem}.bp-process-list{margin:0}.bp-process-item{display:grid;grid-template-columns:110px 190px 1fr;gap:1rem;align-items:center;min-height:77px;border-bottom:1px solid #fff}.bp-process-item strong{font-size:2.2rem}.bp-process-item b{font-size:1.55rem}.bp-process-item span{color:#bdbdbd;font-size:.9rem}.bp-process .btn{margin-top:4rem;background:var(--bp-pink);border-color:var(--bp-pink);color:#222;font-weight:600}
.bp-home-cta{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--bp-pink) 0%,#fff4f8 35%,#fff 70%);padding:78px 0 92px}.bp-home-cta-grid{display:grid;grid-template-columns:1.55fr .62fr;gap:4rem;align-items:center}.bp-home-cta h2{margin:0;font-size:clamp(4.2rem,7.7vw,7.8rem);line-height:.8;text-transform:uppercase;letter-spacing:-.055em}.bp-home-cta h2 em{display:block;color:var(--bp-pink-strong);font-style:normal}.bp-home-cta p{max-width:430px;margin:0;color:#666;font-size:1rem}.bp-home-cta .button-row{justify-content:center;grid-column:1/-1;margin-top:3rem}.bp-home-cta .btn{background:var(--bp-pink);border-color:var(--bp-pink);font-weight:600}.bp-home-cta .bp-dot-grid{position:absolute;right:4%;top:64px;grid-template-columns:repeat(2,18px);margin:0}.bp-home-cta .bp-dot-grid i{background:#999}.home-concept main+section.footer-cta{display:none}.reveal{opacity:1;transform:none}.reveal.in{opacity:1;transform:none}
@media(max-width:1180px){.header-inner{grid-template-columns:minmax(230px,1fr) auto auto}.main-nav{gap:1.25rem}.main-nav a{font-size:.9rem}.bp-featured-track{grid-template-columns:260px 290px 290px 260px;gap:34px;width:max-content}.bp-service-row{grid-template-columns:.72fr 1.1fr .75fr 30px;gap:1.4rem}}
@media(max-width:980px){html{scroll-padding-top:78px}.header-inner{height:78px;display:flex;justify-content:space-between}.header-inner>.brand{margin-right:auto}.brand{grid-template-columns:38px minmax(0,1fr);column-gap:10px}.brand:before{width:38px;height:38px;font-size:.52rem}.brand strong{font-size:.9rem}.brand span{font-size:.6rem}.menu-button{display:block}.header-cta,.lang{display:none}.main-nav{position:fixed;left:0;right:0;top:78px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;max-height:0;overflow:hidden;background:#000;transition:max-height .28s ease;border-top:1px solid rgba(255,255,255,.15)}.main-nav.open{max-height:calc(100vh - 78px);padding:20px var(--bp-gutter) 34px}.main-nav a{width:100%;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:1.3rem}.inner-grid,.section-head,.footer-cta-grid,.contact-grid,.about-hero-grid,.bp-home-hero .hero-grid,.bp-featured .section-intro,.bp-services-head,.bp-craft-head,.bp-about-grid,.bp-process-grid,.bp-home-cta-grid{grid-template-columns:1fr}.inner-hero h1{font-size:clamp(3.55rem,11vw,6.2rem)}.inner-hero .visual{width:min(100%,650px)}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-layout{grid-template-columns:1fr}.sticky-nav{position:relative;top:auto;display:flex;gap:1rem;overflow:auto;padding-bottom:10px}.sticky-nav a{flex:0 0 auto;border:1px solid var(--bp-line);border-radius:999px;padding:.55rem .85rem}.footer-grid{grid-template-columns:1fr 1fr;gap:3rem}.footer-grid>.brand{grid-column:1/-1}.fine{grid-template-columns:1fr}.bp-home-hero{padding-top:40px}.bp-home-hero .hero-grid{gap:3.5rem}.bp-home-hero h1{font-size:clamp(4.15rem,10.5vw,6.2rem)}.bp-hero-media{padding-top:0;width:min(100%,650px)}.bp-hero-media img{aspect-ratio:1.25/1}.bp-hero-square{display:none}.bp-proof-row{grid-template-columns:repeat(2,1fr)}.bp-proof-row:nth-child(1)>div,.bp-proof-row:nth-child(3)>div{grid-column:1}.bp-proof-row:nth-child(2)>div,.bp-proof-row:nth-child(4)>div{grid-column:2}.bp-featured{overflow-x:auto;overflow-y:hidden}.bp-featured>.container{min-width:100%}.bp-featured h2{white-space:normal}.bp-featured .section-intro{min-height:0}.bp-featured-track{grid-template-columns:280px 300px 300px 280px;gap:24px;width:max-content;margin-left:var(--bp-gutter)}.bp-feature-actions{justify-content:flex-start;padding-left:var(--bp-gutter)}.bp-watermark{font-size:9rem}.bp-services-head h2{white-space:normal}.bp-service-row{grid-template-columns:.8fr 1.2fr 32px;gap:1rem}.bp-service-row p{grid-column:2;grid-row:2}.bp-service-row b{grid-column:3;grid-row:1/3}.bp-craft-grid{grid-template-columns:1fr}.bp-craft-card .bp-craft-frame{aspect-ratio:1.8/1!important}.bp-about-home{padding-bottom:210px}.bp-about-home figure{width:min(100%,620px)}.bp-process-grid{gap:3rem}.bp-home-cta .button-row{grid-column:auto;justify-content:flex-start}.wa-text{display:none}.whatsapp-float{width:62px;height:62px;padding:8px;justify-content:center}.cookie-banner{grid-template-columns:1fr}body.consent-open .whatsapp-float{bottom:260px}}
@media(max-width:680px){:root{--bp-gutter:20px}body{font-size:16px}.header-inner{height:70px}.main-nav{top:70px}.brand strong{font-size:.78rem}.brand span{font-size:.54rem}.brand:before{width:36px;height:36px}.footer-grid,.grid-2,.grid-3,.grid-4,.outcomes,.facts,.related-grid,.estimator,.case-gallery{grid-template-columns:1fr}.site-footer{padding-top:46px}.footer-nav{grid-template-columns:1fr 1fr}.footer-contact{align-items:flex-start}.footer-legal{gap:.8rem}.inner-hero{padding:58px 0 72px}.inner-hero h1{font-size:clamp(3.1rem,15.4vw,5.1rem)}.section{padding:72px 0}.section-head{padding-top:12px;border-top-width:4px}.section-head h2,.content h2{font-size:clamp(2.75rem,12vw,4.7rem)}.card{border-radius:20px}.contact-aside{position:relative;top:auto}.bp-home-hero{min-height:0;padding:32px 0 54px}.bp-home-hero h1{font-size:clamp(3.25rem,15vw,5rem);line-height:.8}.bp-home-hero h1 .hero-line{white-space:normal}.bp-hero-intro{font-size:1rem;margin-top:1.8rem}.bp-home-hero .button-row{gap:.8rem}.bp-home-hero .btn{width:100%}.bp-hero-contact{margin-top:2.5rem;gap:.65rem 1rem}.bp-hero-media-top{font-size:.72rem}.bp-hero-media img{aspect-ratio:1/1}.bp-proof{padding:54px 0}.bp-proof-circles{right:22px;top:20px}.bp-proof-circles i{width:62px;height:62px}.bp-proof-row{grid-template-columns:1fr;min-height:100px;padding:18px 0}.bp-proof-row:nth-child(n)>div{grid-column:1}.bp-proof-row strong{font-size:1.25rem}.bp-proof-row span{font-size:1rem}.bp-ticker{padding:20px 0}.bp-featured{padding-top:58px}.bp-featured h2{font-size:clamp(3rem,13vw,4.4rem)}.bp-featured .section-intro{gap:1.5rem;margin-bottom:42px}.bp-featured-track{grid-template-columns:250px 270px 270px 250px;margin-left:20px}.bp-feature-actions{gap:1.2rem;flex-direction:column;align-items:flex-start;margin-top:50px}.bp-watermark{bottom:-32px;font-size:6.5rem}.bp-services{padding:58px 0}.bp-services-head{padding:24px 0;border-width:4px;gap:1.2rem}.bp-services-head h2{font-size:clamp(3.4rem,15vw,5rem)}.bp-service-row{grid-template-columns:1fr 34px;padding:24px 0;gap:.6rem 1rem}.bp-service-row>span:first-child{font-size:1rem;grid-column:1}.bp-service-row strong{grid-column:1;font-size:1.45rem}.bp-service-row p{grid-column:1;font-size:.9rem}.bp-service-row b{grid-column:2;grid-row:1/4;align-self:center}.bp-service-row:nth-child(odd):before{left:20%;width:100px;height:100px}.bp-craft{padding:58px 0}.bp-craft h2{font-size:clamp(3rem,13vw,4.4rem)}.bp-craft-grid{gap:28px}.bp-craft-card .bp-craft-frame{aspect-ratio:1.45/1!important}.bp-about-home{padding:58px 0 170px}.bp-about-home h2{font-size:clamp(3rem,13vw,4.5rem)}.bp-about-list{margin-top:2.5rem}.bp-about-home .bp-watermark{font-size:4.8rem;bottom:-50px}.bp-process{padding:58px 0}.bp-process h2{font-size:clamp(3rem,13vw,4.2rem)}.bp-process-copy p{margin-top:2rem}.bp-process-item{grid-template-columns:66px 1fr;min-height:86px;padding:10px 0}.bp-process-item span{grid-column:2}.bp-process-item strong{font-size:1.8rem}.bp-process-item b{font-size:1.35rem}.bp-process .bp-dot-grid{display:none}.bp-home-cta{padding:58px 0 72px}.bp-home-cta h2{font-size:clamp(3.45rem,15vw,5.2rem)}.bp-home-cta .bp-dot-grid{display:none}.cookie-banner{left:12px;right:12px;bottom:12px;padding:1rem}.cookie-actions .btn{flex:1 1 150px}.whatsapp-float{right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));width:58px;height:58px;min-height:58px}.wa-icon{width:42px;height:42px;flex-basis:42px}body.consent-open .whatsapp-float{bottom:min(330px,48vh)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.bp-ticker-track,.wa-icon:before{animation:none}.btn,.card-image img,.whatsapp-float{transition:none}}@media print{.site-header,.whatsapp-float,.cookie-banner,.footer-cta{display:none!important}.site-footer{background:#fff;color:#000}.section,.inner-hero{break-inside:avoid}}

/* ========================================================================== 
   FINAL VISUAL QA PATCH - 2026-08-10
   Equalised project imagery, repaired brand lockups, removed placeholder
   panels, refined section rhythm and made the homepage grid deterministic.
   ========================================================================== */

/* Header and footer brand lockup: every line receives an explicit grid cell. */
.site-header .brand:before{
  grid-column:1;
  grid-row:1 / 3;
  align-self:center;
}
.site-header .brand strong{
  grid-column:2;
  grid-row:1;
  align-self:end;
  min-width:0;
}
.site-header .brand span{
  grid-column:2;
  grid-row:2;
  align-self:start;
  min-width:0;
  margin-top:.26rem;
}
.site-footer .brand{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  grid-template-rows:auto auto auto;
  column-gap:13px;
  row-gap:0;
  align-items:start;
  align-content:start;
  min-width:0;
}
.site-footer .brand:before{
  grid-column:1;
  grid-row:1 / 3;
  align-self:start;
}
.site-footer .brand strong{
  grid-column:2;
  grid-row:1;
  align-self:end;
  min-width:0;
  line-height:1.08;
}
.site-footer .brand span{
  grid-column:2;
  grid-row:2;
  align-self:start;
  min-width:0;
  margin-top:.42rem;
  white-space:normal;
  line-height:1.34;
}
.site-footer .footer-location{
  grid-column:2;
  grid-row:3;
  min-width:0;
  margin:.75rem 0 0;
  white-space:normal;
  line-height:1.45;
}

/* Shared image discipline across cards and case-study grids. */
.card-image{
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.card-image img,
.grid-2 .card-image img,
.grid-3 .card-image img,
.grid-4 .card-image img{
  width:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
  flex:0 0 auto;
}
.card-image .card-copy{flex:1}
.case-gallery{align-items:stretch}
.case-gallery>*{min-width:0}
.case-gallery img{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:4 / 3;
  object-fit:cover;
}
.visual img{object-fit:cover}

/* ========================================================================== 
   FINAL REFERENCE-FIDELITY REFINEMENT - 2026-08-10
   Keeps the supplied concept's scale, rhythm and decorative geometry while
   preserving responsive behaviour and the bilingual SEO architecture.
   ========================================================================== */

/* Shared media discipline. */
.card-image{
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.card-image img,
.grid-2 .card-image img,
.grid-3 .card-image img,
.grid-4 .card-image img{
  width:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
  flex:0 0 auto;
}
.card-image .card-copy{flex:1}
.case-gallery{align-items:stretch}
.case-gallery>*{min-width:0}
.case-gallery img{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:4 / 3;
  object-fit:cover;
}
.visual img{object-fit:cover}

/* Inner pages: remove the white breadcrumb gap and keep every hero in-frame. */
.breadcrumbs.container{
  width:100%;
  max-width:none;
  margin:0;
  margin-bottom:0;
  padding-block:13px;
  padding-inline:max(var(--bp-gutter),calc((100vw - var(--bp-max)) / 2));
}
.inner-hero{
  padding:clamp(66px,6.4vw,98px) 0 clamp(72px,7vw,108px);
}
.inner-grid{
  grid-template-columns:minmax(0,1.08fr) minmax(300px,.64fr);
  gap:clamp(2.5rem,5vw,5.5rem);
  align-items:center;
}
.inner-hero h1{
  max-width:840px;
  font-size:clamp(3.45rem,5.55vw,6.55rem);
  line-height:.875;
  letter-spacing:-.052em;
  text-wrap:balance;
}
.inner-hero .lede{
  max-width:620px;
  margin-top:1.65rem;
}
.inner-hero .visual{
  width:min(100%,520px);
  justify-self:end;
}

/* Featured work: four equal cards and a true full-width PORTFOLIO word. */
.bp-featured{
  overflow:hidden;
  padding:78px 0 0;
}
.bp-featured .section-intro{
  min-height:0;
  margin-bottom:48px;
}
.bp-featured-track{
  width:min(calc(100% - (var(--bp-gutter) * 2)),var(--bp-max));
  margin-inline:auto;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(20px,2vw,30px);
  align-items:start;
}
.bp-feature-card{
  display:flex;
  min-width:0;
  height:100%;
  flex-direction:column;
}
.bp-feature-card h3{
  min-height:1.65em;
  margin:0 0 10px;
  font-size:clamp(1.08rem,1.35vw,1.36rem);
  line-height:1.08;
}
.bp-feature-card h3 a{
  display:inline;
  text-decoration-thickness:1px;
  text-underline-offset:.18em;
}
.bp-feature-frame{
  width:100%;
  aspect-ratio:1 / 1;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.76);
  border-radius:26px;
  background:#efefef;
  box-shadow:0 1px 0 rgba(255,255,255,.4) inset;
}
.bp-feature-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.001);
  transition:transform .55s cubic-bezier(.2,.65,.25,1);
}
.bp-feature-card:hover .bp-feature-frame img{transform:scale(1.025)}
.bp-feature-card small{
  min-height:1.25rem;
  margin:10px 0 0;
  padding-left:0;
  color:#5f5f5f;
  font-size:.72rem;
  line-height:1.35;
}
.bp-feature-actions{
  position:relative;
  z-index:2;
  margin-top:64px;
}
.bp-featured>.bp-portfolio-word{
  position:relative;
  inset:auto;
  z-index:1;
  display:block;
  width:100vw;
  margin:clamp(58px,5vw,84px) 0 -.075em;
  color:rgba(255,255,255,.31);
  font-size:clamp(10rem,18.55vw,22rem);
  font-weight:700;
  line-height:.72;
  letter-spacing:-.08em;
  text-align:center;
  text-transform:uppercase;
  white-space:nowrap;
  transform:scaleX(1.025);
  transform-origin:center bottom;
  pointer-events:none;
}

/* Services: four deliberate, larger circles - not accidental pseudo-elements. */
.bp-service-list{
  position:relative;
  isolation:isolate;
  margin-top:52px;
}
.bp-service-orbs{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
}
.bp-service-orbs i{
  position:absolute;
  display:block;
  width:clamp(168px,11vw,214px);
  aspect-ratio:1;
  border-radius:50%;
  background:var(--bp-pink-soft);
  transform:translate(-50%,-50%);
}
.bp-service-orbs i:nth-child(1){left:39.5%;top:25%}
.bp-service-orbs i:nth-child(2){left:54.5%;top:25%}
.bp-service-orbs i:nth-child(3){left:39.5%;top:73%}
.bp-service-orbs i:nth-child(4){left:54.5%;top:73%}
.bp-service-row{
  z-index:1;
  min-height:112px;
}
.bp-service-row:nth-child(odd):before,
.bp-service-row:nth-child(3):after{display:none!important}
.bp-service-row strong,
.bp-service-row p,
.bp-service-row>span,
.bp-service-row b{position:relative;z-index:1}

/* Real work: a professional, symmetrical 2 x 2 grid with equal frames. */
.bp-craft{
  padding:82px 0 92px;
}
.bp-craft-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:38px 30px;
  align-items:start;
}
.bp-craft-card{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.bp-craft-card h3{
  min-height:1.45em;
  margin:0 0 10px;
  font-size:1.02rem;
  line-height:1.15;
}
.bp-craft-card:nth-child(n) .bp-craft-frame,
.bp-craft-card .bp-craft-frame{
  width:100%;
  aspect-ratio:16 / 9;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.42);
  border-radius:26px;
  background:#151515;
}
.bp-craft-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.001);
  transition:transform .55s cubic-bezier(.2,.65,.25,1);
}
.bp-craft-card:hover .bp-craft-frame img{transform:scale(1.022)}
.bp-craft-frame .bp-project-tags,
.bp-feature-frame .bp-project-tags{
  position:absolute;
  left:14px;
  right:14px;
  bottom:13px;
  z-index:2;
  display:flex;
}
.bp-tag{
  box-shadow:0 1px 3px rgba(0,0,0,.08);
  backdrop-filter:blur(3px);
}

/* About: three monumental lines exactly as in the approved main concept. */
.bp-about-home{
  isolation:isolate;
  min-height:0;
  padding:92px 0 0;
}
.bp-about-home:after{display:none}
.bp-about-grid{
  position:relative;
  z-index:2;
  align-items:center;
}
.bp-about-copy,
.bp-about-home figure{min-width:0}
.bp-about-home figure{
  position:relative;
  z-index:2;
}
.bp-about-home figure img{
  width:100%;
  aspect-ratio:4 / 5;
  object-fit:cover;
  object-position:center 42%;
}
.bp-about-home .bp-about-watermark{
  position:relative;
  inset:auto;
  z-index:1;
  display:flex;
  width:100%;
  max-width:none;
  margin-top:clamp(64px,6vw,96px);
  padding:0;
  flex-direction:column;
  align-items:flex-start;
  gap:0;
  overflow:hidden;
  color:rgba(255,255,255,.34);
  line-height:.72;
  letter-spacing:-.065em;
  text-transform:uppercase;
  pointer-events:none;
}
.bp-about-wordline{
  display:block;
  width:100%;
  padding-left:clamp(0px,.6vw,12px);
  white-space:nowrap;
}
.bp-about-wordline-first{
  font-size:clamp(7rem,12.15vw,14.4rem);
}
.bp-about-wordline-first i{
  padding-inline:.035em;
  font-style:normal;
}
.bp-about-wordline-packaging{
  font-size:clamp(7rem,12.45vw,14.75rem);
}
.bp-about-wordline-visual{
  font-size:clamp(6.5rem,11.45vw,13.6rem);
}
.bp-about-home .button-row{margin-bottom:0}
.bp-process{
  z-index:3;
  border-top:1px solid rgba(255,255,255,.12);
}

/* Footer and long labels remain calm at all widths. */
.footer-grid>*{min-width:0}
.footer-contact a{overflow-wrap:anywhere}

@media(max-width:1180px){
  .bp-featured-track{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:34px 26px;
  }
  .bp-feature-card h3{min-height:0}
  .bp-service-orbs i{width:clamp(150px,17vw,190px)}
  .bp-service-orbs i:nth-child(1){left:45%;top:24%}
  .bp-service-orbs i:nth-child(2){left:63%;top:24%}
  .bp-service-orbs i:nth-child(3){left:45%;top:72%}
  .bp-service-orbs i:nth-child(4){left:63%;top:72%}
}

@media(max-width:980px){
  .site-header .brand:before{grid-row:1 / 3}
  .site-header .brand strong{grid-column:2;grid-row:1}
  .site-header .brand span{grid-column:2;grid-row:2}
  .inner-grid{
    grid-template-columns:1fr;
    gap:2.6rem;
  }
  .inner-hero h1{
    max-width:900px;
    font-size:clamp(3.35rem,9.4vw,5.8rem);
  }
  .inner-hero .visual{
    width:min(100%,650px);
    justify-self:start;
  }
  .bp-featured{
    overflow:hidden;
    padding-top:66px;
  }
  .bp-featured>.container{min-width:0}
  .bp-featured-track{
    width:min(calc(100% - (var(--bp-gutter) * 2)),var(--bp-max));
    margin-inline:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:32px 22px;
  }
  .bp-feature-actions{
    justify-content:flex-start;
    padding-left:0;
  }
  .bp-featured>.bp-portfolio-word{
    font-size:18.3vw;
    transform:scaleX(1.03);
  }
  .bp-service-orbs i{width:150px}
  .bp-service-orbs i:nth-child(1){left:55%;top:18%}
  .bp-service-orbs i:nth-child(2){left:76%;top:18%}
  .bp-service-orbs i:nth-child(3){left:55%;top:70%}
  .bp-service-orbs i:nth-child(4){left:76%;top:70%}
  .bp-craft-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:30px 22px;
  }
  .bp-craft-card .bp-craft-frame{aspect-ratio:16 / 10!important}
  .site-footer .brand span,
  .site-footer .footer-location{white-space:normal}
}

@media(max-width:680px){
  .breadcrumbs.container{
    padding-inline:20px;
  }
  .inner-hero{
    padding:56px 0 68px;
  }
  .inner-hero h1{
    font-size:clamp(3rem,13.2vw,4.75rem);
    line-height:.88;
  }
  .bp-featured{
    padding-top:58px;
  }
  .bp-featured-track{
    grid-template-columns:1fr;
    gap:34px;
  }
  .bp-feature-card{
    width:100%;
    max-width:560px;
    margin-inline:auto;
  }
  .bp-feature-frame{border-radius:20px}
  .bp-feature-actions{
    margin-top:46px;
    padding-left:0;
  }
  .bp-featured>.bp-portfolio-word{
    margin-top:48px;
    font-size:20vw;
    line-height:.76;
    transform:none;
  }
  .bp-service-row{min-height:0}
  .bp-service-orbs i{
    width:104px;
    opacity:.82;
  }
  .bp-service-orbs i:nth-child(1){left:72%;top:13%}
  .bp-service-orbs i:nth-child(2){left:91%;top:13%}
  .bp-service-orbs i:nth-child(3){left:72%;top:68%}
  .bp-service-orbs i:nth-child(4){left:91%;top:68%}
  .bp-craft{
    padding:62px 0 70px;
  }
  .bp-craft-grid{
    grid-template-columns:1fr;
    gap:32px;
  }
  .bp-craft-card .bp-craft-frame{
    aspect-ratio:16 / 10!important;
    border-radius:20px;
  }
  .bp-about-home{
    padding-top:64px;
  }
  .bp-about-home .bp-about-watermark{
    margin-top:48px;
    line-height:.76;
    letter-spacing:-.06em;
  }
  .bp-about-wordline{
    padding-left:0;
  }
  .bp-about-wordline-first{
    font-size:13.1vw;
  }
  .bp-about-wordline-packaging{
    font-size:16.2vw;
  }
  .bp-about-wordline-visual{
    font-size:12.75vw;
  }
  .site-footer .brand{
    grid-template-columns:42px minmax(0,1fr);
    column-gap:11px;
  }
  .site-footer .brand:before{
    width:38px;
    height:38px;
  }
  .site-footer .brand strong{font-size:.9rem}
  .site-footer .brand span{font-size:.64rem}
  .site-footer .footer-location{font-size:.65rem}
}

@media(prefers-reduced-motion:reduce){
  .bp-feature-frame img,
  .bp-craft-frame img{transition:none}
}


/* Last-pass optical corrections after desktop and mobile rendering. */
.inner-hero{
  padding:clamp(58px,5.7vw,86px) 0 clamp(66px,6.3vw,92px);
}
.inner-grid{
  grid-template-columns:minmax(0,1.22fr) minmax(280px,.58fr);
  gap:clamp(2.25rem,4.5vw,4.75rem);
}
.inner-hero h1{
  max-width:950px;
  font-size:clamp(3.35rem,4.9vw,5.82rem);
  line-height:.89;
}
.inner-hero .visual{width:min(100%,460px)}
.bp-featured>.bp-portfolio-word{
  margin-bottom:0;
  line-height:.76;
}

@media(max-width:980px){
  .inner-grid{grid-template-columns:1fr}
  .inner-hero h1{font-size:clamp(3.25rem,8.8vw,5.4rem)}
  .inner-hero .visual{width:min(100%,620px)}
}

@media(max-width:680px){
  .inner-hero{padding:52px 0 62px}
  .inner-hero h1{font-size:clamp(2.9rem,12.6vw,4.45rem)}
  .bp-service-row>span:first-child{grid-column:1;grid-row:1}
  .bp-service-row strong{grid-column:1;grid-row:2}
  .bp-service-row p{grid-column:1;grid-row:3}
  .bp-service-row b{grid-column:2;grid-row:1 / 4}
}

/* Balanced inner-page title proportions for long editorial headings. */
.inner-grid{
  grid-template-columns:minmax(0,1.35fr) minmax(270px,.55fr);
}
.inner-hero h1{
  max-width:940px;
  font-size:clamp(3.25rem,4.4vw,5.25rem);
}
.inner-hero .visual{width:min(100%,420px)}
@media(max-width:980px){
  .inner-grid{grid-template-columns:1fr}
  .inner-hero h1{font-size:clamp(3.15rem,8.4vw,5.15rem)}
  .inner-hero .visual{width:min(100%,600px)}
}
@media(max-width:680px){
  .inner-hero h1{font-size:clamp(2.85rem,12vw,4.25rem)}
}


/* ========================================================================== 
   FINAL NAVIGATION, STICKY HEADER AND MOBILE LANGUAGE PATCH - 2026-08-11
   ========================================================================== */
.home-concept .site-header{
  position:sticky;
  top:0;
}
.mobile-nav-actions{
  display:none;
}
.menu-button{
  position:relative;
  z-index:1002;
}
.menu-button span{
  transform-origin:center;
}
body.nav-open .menu-button span:nth-child(1){
  transform:translateY(6px) rotate(45deg);
}
body.nav-open .menu-button span:nth-child(2){
  opacity:0;
}
body.nav-open .menu-button span:nth-child(3){
  transform:translateY(-6px) rotate(-45deg);
}

@media(max-width:1120px){
  html{scroll-padding-top:78px}
  .header-inner{
    height:78px;
    display:flex;
    justify-content:space-between;
  }
  .header-inner>.brand{margin-right:auto}
  .brand{grid-template-columns:38px minmax(0,1fr);column-gap:10px}
  .brand:before{width:38px;height:38px;font-size:.52rem}
  .brand strong{font-size:.9rem}
  .brand span{font-size:.6rem}
  .menu-button{display:block}
  .header-cta,
  .nav-wrap>.lang{display:none}
  .site-header,
  .home-concept .site-header{
    position:sticky;
    top:0;
    z-index:1000;
  }
  .main-nav{
    position:fixed;
    inset:78px 0 0 0;
    z-index:999;
    display:flex;
    width:100%;
    height:calc(100vh - 78px);
    height:calc(100dvh - 78px);
    max-height:none;
    padding:clamp(24px,4vh,42px) var(--bp-gutter) max(30px,env(safe-area-inset-bottom));
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    background:#000;
    border-top:1px solid rgba(255,255,255,.16);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-10px);
    transition:opacity .22s ease,transform .22s ease,visibility 0s linear .22s;
  }
  .main-nav.open{
    max-height:none;
    padding:clamp(24px,4vh,42px) var(--bp-gutter) max(30px,env(safe-area-inset-bottom));
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
    transition:opacity .22s ease,transform .22s ease,visibility 0s;
  }
  .main-nav>a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-height:54px;
    padding:12px 0;
    border-bottom:1px solid rgba(255,255,255,.2);
    font-size:clamp(1.18rem,4.5vw,1.55rem);
    line-height:1.05;
  }
  .main-nav>a:after{
    position:static;
    width:9px;
    height:9px;
    margin-left:1rem;
    flex:0 0 auto;
    border-top:1px solid currentColor;
    border-right:1px solid currentColor;
    background:transparent;
    transform:rotate(45deg);
    transition:transform .2s ease;
  }
  .main-nav>a:hover:after,
  .main-nav>a[aria-current="page"]:after{
    transform:translateX(3px) rotate(45deg);
  }
  .main-nav>a[aria-current="page"]{
    color:var(--bp-pink);
  }
  .mobile-nav-actions{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px 20px;
    align-items:end;
    margin-top:auto;
    padding-top:32px;
  }
  .mobile-language{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
  }
  .mobile-menu-label{
    flex:0 0 100%;
    color:#8d8d8d;
    font-size:.68rem;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
  }
  .mobile-language-current,
  .mobile-language-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:8px 13px;
    border:1px solid rgba(255,255,255,.5);
    border-radius:999px;
    color:#fff;
    font-size:.92rem;
    text-decoration:none;
  }
  .mobile-language-current{
    border-color:var(--bp-pink);
    background:var(--bp-pink);
    color:#000;
  }
  .mobile-language-link:hover,
  .mobile-language-link:focus-visible{
    border-color:var(--bp-pink);
    color:var(--bp-pink);
  }
  .mobile-menu-cta{
    align-self:end;
    min-height:46px;
    padding-inline:1.25rem;
    border-color:var(--bp-pink);
    background:var(--bp-pink);
    color:#000;
    white-space:nowrap;
  }
  .mobile-menu-note{
    grid-column:1/-1;
    margin:0;
    color:#8d8d8d;
    font-size:.78rem;
  }
  body.nav-open main,
  body.nav-open .site-footer,
  body.nav-open .whatsapp-float,
  body.nav-open .cookie-banner{
    visibility:hidden;
  }
}

@media(max-width:680px){
  .main-nav{
    inset:70px 0 0 0;
    height:calc(100vh - 70px);
    height:calc(100dvh - 70px);
  }
  .mobile-nav-actions{
    grid-template-columns:1fr;
    align-items:start;
  }
  .mobile-menu-cta{
    width:100%;
  }
}

@media(prefers-reduced-motion:reduce){
  .main-nav,
  .menu-button span{
    transition:none!important;
  }
}

/* Homepage language switch matches inner pages on desktop. */
.home-concept .site-header .lang{display:inline-block}
@media(max-width:1120px){
  .home-concept .site-header .nav-wrap .lang{display:none}
}

/* Mobile language controls are compact pills, not full menu rows. */
@media(max-width:1120px){
  .main-nav .mobile-language-link{
    width:auto;
    min-height:40px;
    padding:8px 13px;
    border:1px solid rgba(255,255,255,.5);
    border-radius:999px;
    color:#fff;
    font-size:.92rem;
    line-height:1;
  }
  .main-nav .mobile-language-link:after,
  .main-nav .mobile-menu-cta:after{
    display:none;
  }
  .main-nav .mobile-menu-cta{
    width:auto;
    min-height:46px;
    padding:.7rem 1.25rem;
    border:1px solid var(--bp-pink);
    border-radius:999px;
    background:var(--bp-pink);
    color:#000;
    font-size:1rem;
    line-height:1;
  }
}
@media(max-width:680px){
  .main-nav .mobile-menu-cta{width:100%}
}

/* SPANISH HOMEPAGE HERO AND FINAL CTA LOCK-UP - 2026-08-11 */

/* The Spanish phrase is longer than the English source lock-up. These rules
   preserve the same editorial scale while preventing the title from touching
   the project image at wide desktop sizes. */
body[data-language="es"].home-concept .bp-home-hero .hero-grid{
  grid-template-columns:minmax(0,1.16fr) minmax(360px,414px);
  gap:clamp(3.25rem,6vw,6.5rem);
}
body[data-language="es"].home-concept .bp-home-hero h1{
  max-width:760px;
  font-size:clamp(3.8rem,4.75vw,5.05rem);
  line-height:.81;
  letter-spacing:-.052em;
}
body[data-language="es"].home-concept .bp-home-hero h1 .hero-line{
  white-space:nowrap;
}
body[data-language="es"].home-concept .bp-home-hero h1 .hero-line-wide{
  font-size:.92em;
  letter-spacing:-.057em;
}
body[data-language="es"].home-concept .bp-hero-intro{
  max-width:535px;
}

/* The previous markup combined <br> elements with a block-level <em>, which
   created an accidental empty line between IMPOSSIBLE and TO OVERLOOK. The
   lock-up now uses one explicit block per visual line. */
.bp-home-cta h2{
  line-height:.755;
}
.bp-home-cta h2 .cta-line{
  display:block;
  width:max-content;
  max-width:100%;
}
.bp-home-cta h2 .cta-line + .cta-line{
  margin-top:-.025em;
}
.bp-home-cta h2 .cta-emphasis{
  color:var(--bp-pink-strong);
}
.bp-home-cta h2 .cta-emphasis em{
  display:inline;
  color:inherit;
  font-style:normal;
}
.bp-home-cta h2 .cta-last{
  margin-top:-.095em;
}
.bp-home-cta-grid{
  grid-template-columns:minmax(0,1.55fr) minmax(250px,.58fr);
  gap:clamp(2rem,4vw,4rem);
  align-items:end;
}
.bp-home-cta-grid>p{
  align-self:end;
  margin:0 0 .45em;
}
body[data-language="es"].home-concept .bp-home-cta h2{
  font-size:clamp(3.85rem,6.15vw,5.85rem);
  letter-spacing:-.058em;
}

@media(max-width:1180px) and (min-width:981px){
  body[data-language="es"].home-concept .bp-home-hero .hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(330px,390px);
    gap:clamp(2.5rem,4.5vw,4.5rem);
  }
  body[data-language="es"].home-concept .bp-home-hero h1{
    font-size:clamp(3.4rem,4.85vw,4.45rem);
  }
}

@media(max-width:1120px){
  body[data-language="es"].home-concept .bp-home-hero .hero-grid{
    grid-template-columns:1fr;
    gap:3.5rem;
  }
  body[data-language="es"].home-concept .bp-home-hero h1{
    max-width:850px;
    font-size:clamp(4rem,9.5vw,5.45rem);
  }
  .bp-home-cta-grid{
    grid-template-columns:1fr;
    gap:1.6rem;
  }
  .bp-home-cta-grid>p{
    max-width:560px;
    margin-top:.4rem;
  }
  .bp-home-cta .button-row{
    margin-top:.5rem;
  }
}

@media(max-width:680px){
  body[data-language="es"].home-concept .bp-home-hero h1{
    font-size:clamp(2.85rem,12.8vw,4.05rem);
    line-height:.82;
  }
  body[data-language="es"].home-concept .bp-home-hero h1 .hero-line{
    white-space:nowrap;
  }
  body[data-language="es"].home-concept .bp-home-hero h1 .hero-line-wide{
    font-size:.84em;
  }
  .bp-home-cta h2,
  body[data-language="es"].home-concept .bp-home-cta h2{
    font-size:clamp(3.15rem,14.2vw,4.65rem);
    line-height:.76;
  }
  .bp-home-cta h2 .cta-line{
    width:auto;
  }
  .bp-home-cta h2 .cta-last{
    margin-top:-.07em;
  }
}

@media(max-width:390px){
  body[data-language="es"].home-concept .bp-home-hero h1{
    font-size:clamp(2.62rem,12vw,2.95rem);
  }
  body[data-language="es"].home-concept .bp-home-hero h1 .hero-line-wide{
    font-size:.82em;
  }
}

/* Optical sizing for the longest CTA line keeps the reference four-line lock-up. */
.bp-home-cta h2 .cta-line-wide{
  font-size:.88em;
  letter-spacing:-.06em;
}
.hero-mobile-break{display:none}

@media(max-width:680px){
  .bp-home-cta h2 .cta-line-wide{
    font-size:.72em;
    letter-spacing:-.045em;
  }
  body[data-language="es"].home-concept .bp-home-hero h1 .hero-line-wide{
    font-size:1em;
  }
  body[data-language="es"].home-concept .bp-home-hero h1 .hero-mobile-break{
    display:block;
    height:0;
  }
}

@media(max-width:390px){
  body[data-language="es"].home-concept .bp-home-hero h1 .hero-line-wide{
    font-size:1em;
  }
}

/* Final mobile Spanish lock-up correction - prevents the long translation from clipping. */
@media(max-width:680px){
  body[data-language="es"].home-concept .bp-home-hero h1 .hero-line-wide{
    font-size:1em;
    white-space:normal!important;
  }
  body[data-language="es"].home-concept .bp-home-hero h1 .hero-mobile-break{
    display:block;
    width:100%;
    height:0;
  }
}
@media(max-width:390px){
  body[data-language="es"].home-concept .bp-home-hero h1{
    font-size:clamp(2.55rem,11.75vw,2.88rem);
  }
}

/* Decorative service circles must never create page-level horizontal scroll. */
.bp-services{overflow:hidden}
@media(max-width:680px){
  .bp-service-orbs i:nth-child(2),
  .bp-service-orbs i:nth-child(4){left:88.5%}
}


/* FINAL RESPONSIVE WIDTH SAFETY - 2026-08-11 */
.bp-featured{overflow:hidden}

@media(max-width:1120px) and (min-width:981px){
  body[data-language="es"].home-concept .bp-home-hero .hero-grid{
    grid-template-columns:1fr;
    gap:3.25rem;
  }
  body[data-language="es"].home-concept .bp-home-hero h1{
    max-width:850px;
    font-size:clamp(4rem,8vw,5.2rem);
  }
  body[data-language="es"].home-concept .bp-hero-media{
    width:min(100%,650px);
    padding-top:0;
  }
  body[data-language="es"].home-concept .bp-hero-media img{
    aspect-ratio:1.25/1;
  }
}

@media(max-width:680px){
  .bp-services-head,
  .bp-craft-head{
    grid-template-columns:minmax(0,1fr);
  }
  .bp-services-head>*,
  .bp-craft-head>*{
    min-width:0;
    max-width:100%;
  }
}
