:root{--green:#72cf36;--green2:#9be65e;--black:#05090a;--black2:#0a1011;--ink:#111718;--muted:#687275;--line:#dce2df;--off:#f5f7f5;--white:#fff;--max:1180px;--radius:18px;--shadow:0 20px 60px rgba(0,0,0,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;background:#fff;padding:12px;z-index:9999}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{position:fixed;left:0;right:0;top:0;z-index:1000;background:rgba(5,9,10,.78);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08);transition:.3s}.site-header.scrolled{background:rgba(5,9,10,.96)}body.admin-bar .site-header{top:32px}.header-inner{height:78px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;color:#fff;min-width:70px}.brand-mark,.custom-logo{width:48px!important;height:48px!important;object-fit:contain}.custom-logo-link{display:flex}.brand-wordmark{display:grid;line-height:1}.brand-wordmark strong{font-size:18px;letter-spacing:.14em}.brand-wordmark small{color:var(--green);font-size:10px;letter-spacing:.4em;margin-top:5px}.primary-nav{margin-left:auto}.primary-nav ul{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}.primary-nav a{color:#f4f7f5;font-size:13px;font-weight:700;transition:.2s}.primary-nav a:hover,.primary-nav .current-menu-item>a{color:var(--green)}.menu-toggle{display:none;margin-left:auto;background:none;border:0;padding:5px}.menu-toggle span:not(.screen-reader-text){display:block;width:27px;height:2px;background:#fff;margin:5px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;border:1px solid var(--green);border-radius:6px;background:var(--green);color:#071006;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:.2s;cursor:pointer}.button:hover{background:var(--green2);border-color:var(--green2);transform:translateY(-2px)}.button-outline{background:transparent;color:#fff}.button-dark{background:transparent;color:var(--ink);border-color:#bcc5c0}.header-cta{margin-left:5px}.hero{position:relative;min-height:var(--hero-height,760px);display:flex;align-items:center;background:#040809;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;background-image:var(--hero-image);background-position:var(--hero-position,center center);background-size:cover;background-repeat:no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--hero-overlay-rgb,3,7,8),.99) 0%,rgba(var(--hero-overlay-rgb,3,7,8),.93) 39%,rgba(var(--hero-overlay-rgb,3,7,8),calc(var(--hero-overlay-opacity,.78)*.56)) 68%,rgba(var(--hero-overlay-rgb,3,7,8),calc(var(--hero-overlay-opacity,.78)*.13)) 100%)}.hero-grid{position:relative;z-index:1;padding-top:78px}.hero-copy{max-width:650px;padding:110px 0 85px}.eyebrow{margin:0 0 14px;color:var(--green);font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.hero h1,.page-hero h1{margin:0 0 24px;font-size:clamp(48px,6.1vw,82px);line-height:1.02;letter-spacing:-.045em}.hero h1 span,.page-hero h1 span{color:var(--green)}.hero-intro,.page-hero p,.lead{max-width:620px;color:#c6ceca;font-size:18px}.button-row{display:flex;gap:14px;margin-top:32px}.proof-bar{background:#060b0c;color:#fff;border-top:1px solid rgba(255,255,255,.08)}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr)}.proof-grid>div{display:flex;align-items:center;gap:15px;padding:24px 0;border-right:1px solid rgba(255,255,255,.08)}.proof-grid>div:last-child{border:0}.proof-grid b{color:var(--green);font-size:13px}.proof-grid span{display:grid}.proof-grid strong{font-size:13px}.proof-grid small{color:#7d8984}.section{padding:100px 0}.section.light{background:var(--off)}.section.dark,.pricing-preview{background:var(--black2);color:#fff}.section-heading{text-align:center;max-width:760px;margin:0 auto 50px}.section-heading h2,.section h2,.final-cta h2{margin:0 0 16px;font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.035em}.section-heading>p:last-child{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 0 0 rgba(0,0,0,0);transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#bfd5b5}.service-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #b9d7a9;border-radius:50%;color:var(--green);font-size:20px}.service-card h3{margin:22px 0 8px}.service-card p{color:var(--muted);font-size:14px}.service-card a,.text-link{font-size:13px;font-weight:800;color:#327e16}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.value-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.value-list>div,.value-cards article{padding:24px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(255,255,255,.025)}.value-list b{color:#fff}.value-list p,.value-cards p{color:#9ca7a2;font-size:14px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.process-step{padding:30px;border-right:1px solid var(--line)}.process-step:last-child{border:0}.process-step span{color:var(--green);font-size:12px;font-weight:900}.process-step p{color:var(--muted);font-size:14px}.pricing-preview{padding:100px 0}.mini-pricing{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mini-pricing>div{padding:28px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:#0d1516}.mini-pricing .featured{border-color:var(--green)}.mini-pricing small{color:var(--green);font-weight:900}.mini-pricing strong{display:block;font-size:44px;margin:14px 0}.mini-pricing strong span{font-size:12px;color:#92a09a}.mini-pricing p{color:#aeb8b3}.faq .split{align-items:start}.accordion details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 20px;margin-bottom:12px}.accordion summary{cursor:pointer;padding:19px 0;font-weight:800}.accordion p{color:var(--muted);margin-top:0}.final-cta{background:linear-gradient(135deg,#050909,#0c1512);color:#fff;text-align:center;padding:90px 0;border-top:1px solid rgba(255,255,255,.08)}.final-cta .container{max-width:760px}.final-cta p:not(.eyebrow){color:#aeb8b3}.page-hero{position:relative;padding:170px 0 95px;background:radial-gradient(circle at 85% 30%,rgba(114,207,54,.11),transparent 28%),#05090a;color:#fff;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-180px;top:80px;width:580px;height:580px;border:1px solid rgba(114,207,54,.12);border-radius:50%}.page-hero .container{position:relative;z-index:1}.page-hero.compact{padding-bottom:70px}.service-detail-grid{display:grid;gap:18px}.service-detail{display:grid;grid-template-columns:80px 1fr;gap:25px;background:#fff;border:1px solid var(--line);padding:32px;border-radius:var(--radius)}.service-detail>span{color:var(--green);font-weight:900}.service-detail h2{font-size:30px}.service-detail p{color:var(--muted)}.service-detail ul{columns:2;padding-left:20px}.service-detail li::marker,.price-card li::marker{color:var(--green)}.about-panel{min-height:390px;background:#091011;border-radius:22px;display:grid;place-items:center;text-align:center;padding:40px;color:#fff}.about-panel img{max-width:210px}.about-panel p{color:#9ba7a1}.value-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}.price-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:36px;box-shadow:var(--shadow)}.price-card.featured{border-color:var(--green);transform:translateY(-12px)}.price-card>small{font-weight:900}.price-card h2{font-size:50px;margin:18px 0}.price-card h2 span{font-size:12px;color:var(--muted)}.price-card p{color:var(--muted)}.price-card ul{padding-left:20px;min-height:170px}.price-card .button{width:100%}.badge{position:absolute;left:20px;right:20px;top:-15px;text-align:center;background:var(--green);padding:6px;border-radius:5px;font-size:10px;font-weight:900}.pricing-note{text-align:center;color:var(--muted);margin-top:30px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.contact-list p{display:grid;margin:0;padding:18px 0;border-bottom:1px solid var(--line)}.contact-list strong{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#507244}.contact-form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px;box-shadow:var(--shadow)}.contact-form label{display:block;font-size:12px;font-weight:800;margin-bottom:15px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;margin-top:7px;padding:13px;border:1px solid #d6ddd9;border-radius:6px;background:#fafbfa;font:inherit}.contact-form .button{width:100%}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.braluso-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.alert{padding:12px;border-radius:6px}.alert.success{background:#e9f7e1;color:#276d11}.alert.error{background:#fee9e9;color:#9b2222}.meeting-points>div{padding:18px 0;border-bottom:1px solid var(--line)}.meeting-points p{color:var(--muted)}.legal-content{max-width:820px}.legal-content h2{font-size:28px;margin-top:36px}.legal-content p{color:#4f595c}.site-footer{background:#030708;color:#dbe1de;padding:65px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:70px}.footer-grid>div:first-child p{max-width:410px;color:#89958f}.footer-grid h3{font-size:14px}.footer-grid ul{list-style:none;margin:0;padding:0}.footer-grid li{margin:8px 0;color:#9ba6a1}.footer-grid a:hover{color:var(--green)}.footer-brand{margin-bottom:18px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:45px;padding-top:20px;border-top:1px solid rgba(255,255,255,.09);font-size:11px;color:#738079}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){body.admin-bar .site-header{top:46px}.header-cta{display:none}.brand{min-width:0}.menu-toggle{display:block}.primary-nav{display:none;position:absolute;left:0;right:0;top:78px;background:#05090a;padding:24px}.primary-nav.open{display:block}.primary-nav ul{flex-direction:column;align-items:flex-start}.service-grid,.value-cards,.process-grid{grid-template-columns:repeat(2,1fr)}.process-step:nth-child(2){border-right:0}.process-step{border-bottom:1px solid var(--line)}.process-step:nth-child(3),.process-step:nth-child(4){border-bottom:0}.split,.contact-grid{grid-template-columns:1fr;gap:48px}.hero-bg{background-position:60% center}.hero-shade{background:rgba(var(--hero-overlay-rgb,3,7,8),var(--hero-overlay-opacity,.78))}.pricing-grid{grid-template-columns:1fr}.price-card.featured{transform:none;margin-top:14px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:640px){.container{width:min(calc(100% - 28px),var(--max))}.header-inner{height:70px}.brand-wordmark{display:none}.brand-mark,.custom-logo{width:36px!important;height:36px!important}.primary-nav{top:70px}.hero{min-height:710px}.hero-grid{padding-top:70px}.hero-copy{padding:90px 0 70px}.hero h1,.page-hero h1{font-size:44px}.hero-intro,.page-hero p,.lead{font-size:16px}.button-row{flex-direction:column;align-items:stretch}.proof-grid,.service-grid,.value-cards,.process-grid,.mini-pricing{grid-template-columns:1fr}.proof-grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}.value-list{grid-template-columns:1fr}.process-step{border-right:0!important;border-bottom:1px solid var(--line)!important}.process-step:last-child{border-bottom:0!important}.section,.pricing-preview{padding:72px 0}.page-hero{padding:135px 0 70px}.service-detail{grid-template-columns:1fr}.service-detail ul{columns:1}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}.about-panel{min-height:300px}}

/* Braluso Premium v6: social media icons */
.social-icons{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}
.social-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.16);border-radius:50%;color:#fff;background:rgba(255,255,255,.035);transition:transform .2s,border-color .2s,background .2s,color .2s}
.social-icon svg{width:18px;height:18px;fill:currentColor}
.social-icon:hover,.social-icon:focus-visible{color:#071006;background:var(--green);border-color:var(--green);transform:translateY(-2px);outline:none}
.contact-social{margin-top:30px}
.contact-social-title{margin:0 0 12px!important;padding:0!important;border:0!important;color:#507244;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.social-icons-contact{margin-top:0}
.social-icons-contact .social-icon{color:var(--ink);background:#fff;border-color:var(--line)}
.social-icons-contact .social-icon:hover,.social-icons-contact .social-icon:focus-visible{color:#071006;background:var(--green);border-color:var(--green)}


/* Braluso Premium v4: editable brand name beside the logo */
.brand{gap:var(--brand-name-gap,10px);min-width:max-content}
.brand-name{display:inline-block;color:var(--brand-name-colour,#fff);font-size:var(--brand-name-size,17px);font-weight:800;line-height:1.05;letter-spacing:.035em;white-space:nowrap}
@media(max-width:980px){.brand{max-width:calc(100% - 62px)}.brand-name{overflow:hidden;text-overflow:ellipsis}}
@media(max-width:640px){.brand-wordmark{display:none}.brand-name{display:inline-block;font-size:var(--brand-name-mobile-size,14px);letter-spacing:.02em}.brand{gap:var(--brand-name-gap,10px);min-width:0}.header-inner{gap:14px}.menu-toggle{flex:0 0 auto}}
@media(max-width:360px){.brand-name{font-size:min(var(--brand-name-mobile-size,14px),13px)}}


/* Braluso Premium v7: stronger light-background contrast */
.section.light .lead,
.section.light .about-split .lead,
.section.light .section-heading > p:last-child,
.section.light .faq p { color:#3f4a4d; }
.about-split .lead { color:#364144; }
.page-hero p { color:#d5ddd8; }

/* Dedicated maintenance template — never reuses Contact page content */
.braluso-maintenance-page { background:#05090a; }
.maintenance-screen { min-height:100vh;display:grid;place-items:center;padding:40px 20px;background:radial-gradient(circle at 80% 20%,rgba(114,207,54,.14),transparent 30%),#05090a;color:#fff; }
.maintenance-card { width:min(100%,720px);text-align:center;padding:64px 42px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:rgba(10,16,17,.86);box-shadow:0 30px 90px rgba(0,0,0,.32); }
.maintenance-logo { width:86px;height:86px;object-fit:contain;margin:0 auto 28px; }
.maintenance-card h1 { margin:0 0 18px;font-size:clamp(42px,7vw,72px);line-height:1.04;letter-spacing:-.045em; }
.maintenance-card > p:not(.eyebrow) { max-width:590px;margin:0 auto 30px;color:#c9d2cd;font-size:18px; }
@media(max-width:640px){.maintenance-card{padding:46px 24px}.maintenance-card>p:not(.eyebrow){font-size:16px}}

/* v8 accessibility and contrast */
.about-split .lead{color:#313b3e}
.page-hero .container>p:last-child{color:#d4dad7}


/* Braluso Premium v9: responsive hero framing and premium internal-page heroes */
.hero-bg{background-position:var(--hero-position,center center);transform:scale(1.002);transform-origin:center center}
.page-hero{min-height:520px;display:flex;align-items:center;padding:158px 0 92px;background:
 radial-gradient(circle at 82% 26%,rgba(114,207,54,.15),transparent 24%),
 radial-gradient(circle at 66% 72%,rgba(114,207,54,.055),transparent 28%),
 linear-gradient(135deg,#05090a 0%,#071011 54%,#05090a 100%)}
.page-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.7;background-image:
 linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
 linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,transparent 20%,#000 72%,transparent)}
.page-hero:after{right:-155px;top:40px;width:610px;height:610px;border:1px solid rgba(114,207,54,.18);box-shadow:0 0 0 70px rgba(114,207,54,.025),0 0 0 145px rgba(114,207,54,.018)}
.page-hero .container:after{content:"";position:absolute;right:7%;top:50%;width:190px;height:190px;transform:translateY(-48%) rotate(18deg);border-top:2px solid rgba(114,207,54,.68);border-right:2px solid rgba(114,207,54,.42);border-radius:0 100% 0 0;filter:drop-shadow(0 0 24px rgba(114,207,54,.18));pointer-events:none}
.page-hero .eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px}
.page-hero .eyebrow:before{content:"";width:24px;height:1px;background:var(--green);box-shadow:0 0 12px rgba(114,207,54,.7)}
.page-hero h1{max-width:940px;margin-bottom:26px;font-size:clamp(50px,6vw,84px);text-wrap:balance}
.page-hero h1 span{display:inline;color:var(--green);text-shadow:0 0 30px rgba(114,207,54,.12)}
.page-hero p:last-child{max-width:680px;font-size:18px;line-height:1.7;color:#d5ddd8}
.page-hero+ .section{position:relative}
.page-hero+ .section:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(114,207,54,.45),transparent)}
@media(min-width:1400px){.hero-bg{background-position:center center}.hero-copy{padding-top:125px}.page-hero .container:after{right:11%;width:230px;height:230px}}
@media(max-width:980px){.hero-bg{background-position:center center}.page-hero{min-height:470px;padding:142px 0 78px}.page-hero .container:after{right:-25px;opacity:.48;width:150px;height:150px}}
@media(max-width:640px){.hero-bg{background-position:center center}.page-hero{min-height:430px;padding:124px 0 64px}.page-hero:after{right:-330px;top:35px}.page-hero .container:after{display:none}.page-hero h1{font-size:44px}.page-hero p:last-child{font-size:16px}.page-hero:before{background-size:46px 46px}}

/* Braluso Digital Premium v10 — final hero and interaction refinement */
.site-header .brand-mark,.site-header .custom-logo{width:53px!important;height:53px!important}
.site-header .brand-name{font-size:18px}
.header-inner{gap:31px}
.primary-nav ul{gap:31px}

/* Keep the supplied London artwork complete: no crop on desktop */
.hero{min-height:740px;background:#030708}
.hero-bg{
  background-image:var(--hero-image);
  background-size:auto 100%;
  background-position:right center;
  background-repeat:no-repeat;
  transform:none;
}
.hero-shade{background:linear-gradient(90deg,rgba(3,7,8,1) 0%,rgba(3,7,8,.98) 28%,rgba(3,7,8,.88) 43%,rgba(3,7,8,.28) 62%,rgba(3,7,8,0) 82%)}
.hero-grid{padding-top:78px}
.hero-copy{max-width:610px;padding:72px 0 92px;transform:translateY(-34px)}
.hero h1{font-size:clamp(52px,5.4vw,78px)}

/* Premium Book a Meeting interaction */
.header-cta,.meeting-button{position:relative;overflow:hidden;isolation:isolate;gap:9px;transition:transform .25s ease,box-shadow .25s ease,color .25s ease,border-color .25s ease}
.header-cta:after,.meeting-button:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,var(--green),var(--green2));transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.header-cta:before{content:"▦";font-size:15px;line-height:1;margin-right:8px;opacity:0;transform:translateX(-5px);transition:opacity .25s ease,transform .25s ease}
.header-cta:hover:before{opacity:1;transform:none}
.header-cta:hover,.meeting-button:hover{color:#071006;border-color:var(--green2);transform:translateY(-2px) scale(1.02);box-shadow:0 0 24px rgba(114,207,54,.28)}
.header-cta:hover:after,.meeting-button:hover:after{transform:scaleX(1)}
.meeting-icon{font-size:16px;line-height:1}

@media(min-width:1400px){
  .hero{min-height:760px}
  .hero-bg{background-size:auto 100%;background-position:right center}
  .hero-copy{padding-top:68px;transform:translateY(-38px)}
}
@media(max-width:1100px){
  .hero-bg{background-size:cover;background-position:62% center}
  .hero-copy{transform:translateY(-15px)}
}
@media(max-width:980px){
  .site-header .brand-mark,.site-header .custom-logo{width:48px!important;height:48px!important}
  .hero-bg{background-size:cover;background-position:64% center}
  .hero-copy{padding-top:85px;transform:none}
}
@media(max-width:640px){
  .site-header .brand-mark,.site-header .custom-logo{width:40px!important;height:40px!important}
  .hero{min-height:710px}
  .hero-bg{background-size:cover;background-position:67% center}
  .hero-copy{padding:78px 0 66px;transform:none}
}
@media(prefers-reduced-motion:reduce){.header-cta,.meeting-button,.header-cta:after,.meeting-button:after,.header-cta:before{transition:none!important}}

/* Braluso Digital Premium v11 — final desktop, internal-page and mobile polish */
.site-header .brand-mark,.site-header .custom-logo{width:56px!important;height:56px!important}
.site-header .brand-name{font-size:19px;letter-spacing:.04em}
.header-inner{height:82px;gap:34px}
.primary-nav ul{gap:34px}
.primary-nav a{font-size:14px}
.header-cta{min-width:166px;padding-inline:25px;font-size:12.5px}

/* Homepage balance and natural fade for the embedded green lines */
.hero{isolation:isolate}
.hero:after{content:"";position:absolute;z-index:0;left:0;bottom:0;width:61%;height:38%;pointer-events:none;background:linear-gradient(90deg,rgba(3,7,8,.12) 0%,rgba(3,7,8,.22) 45%,rgba(3,7,8,.7) 78%,rgba(3,7,8,1) 100%);mask-image:linear-gradient(to top,#000 0%,#000 72%,transparent 100%)}
.hero-bg,.hero-shade{z-index:-2}.hero-shade{z-index:-1}
.hero-copy{max-width:635px;transform:translate(22px,-48px)}
.hero-intro{font-size:19px;line-height:1.72}

/* More premium proof strip */
.proof-grid{gap:0}
.proof-grid>div{position:relative;min-height:94px;padding:23px 26px;transition:background .25s ease,transform .25s ease}
.proof-grid>div:before{content:"";flex:0 0 43px;width:43px;height:43px;border:1px solid rgba(114,207,54,.42);border-radius:50%;background-position:center;background-repeat:no-repeat;background-size:21px;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.proof-grid>div:nth-child(1):before{background-image:radial-gradient(circle,var(--green) 0 13%,transparent 15% 30%,var(--green) 32% 38%,transparent 40%)}
.proof-grid>div:nth-child(2):before{border-radius:10px;background-image:linear-gradient(to top,var(--green) 0 100%);clip-path:polygon(6% 100%,6% 67%,27% 67%,27% 100%,39% 100%,39% 45%,60% 45%,60% 100%,72% 100%,72% 18%,94% 18%,94% 100%)}
.proof-grid>div:nth-child(3):before{background-image:radial-gradient(circle at 50% 31%,transparent 0 18%,var(--green) 20% 25%,transparent 27%),radial-gradient(ellipse at 50% 83%,transparent 0 35%,var(--green) 37% 43%,transparent 45%)}
.proof-grid>div:after{content:"";position:absolute;left:26px;right:26px;bottom:0;height:2px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.proof-grid>div:hover{background:rgba(114,207,54,.035);transform:translateY(-2px)}
.proof-grid>div:hover:before{border-color:var(--green);box-shadow:0 0 20px rgba(114,207,54,.15);transform:scale(1.05)}
.proof-grid>div:hover:after{transform:scaleX(1)}
.proof-grid strong{font-size:14px}.proof-grid small{font-size:12px}

/* Internal-page heroes and service rows */
.page-hero{min-height:560px;padding-top:174px;padding-bottom:108px}
.page-hero p:last-child{font-size:19px;color:#e0e6e2}
.page-hero .container:before{content:"";position:absolute;right:1%;top:14%;width:330px;height:250px;pointer-events:none;opacity:.32;background:repeating-radial-gradient(ellipse at 100% 50%,transparent 0 37px,rgba(114,207,54,.38) 39px 40px,transparent 42px 60px);mask-image:linear-gradient(90deg,transparent,#000 38%,#000)}
.service-detail{position:relative;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.service-detail:after{content:"";position:absolute;left:0;top:20px;bottom:20px;width:3px;border-radius:4px;background:var(--green);transform:scaleY(.25);opacity:.45;transition:transform .25s ease,opacity .25s ease}
.service-detail:hover{transform:translateY(-4px);border-color:#9fcd89;box-shadow:0 20px 55px rgba(0,0,0,.09)}
.service-detail:hover:after{transform:scaleY(1);opacity:1}
.service-detail>span{font-size:16px}
.service-detail:hover h2{color:#327e16}

@media(min-width:1400px){
  .hero-copy{transform:translate(28px,-54px)}
  .hero:after{width:58%;height:40%}
}

@media(max-width:1100px){
  .site-header .brand-mark,.site-header .custom-logo{width:51px!important;height:51px!important}
  .site-header .brand-name{font-size:18px}
  .header-inner{gap:25px}.primary-nav ul{gap:23px}.primary-nav a{font-size:13px}
  .hero-copy{transform:translateY(-25px)}
}

@media(max-width:980px){
  .header-inner{height:78px}
  .site-header .brand-mark,.site-header .custom-logo{width:48px!important;height:48px!important}
  .site-header .brand-name{font-size:18px}
  .primary-nav{top:78px}
  .hero-copy{transform:none;margin-left:0}
  .hero:after{width:72%;height:35%}
  .page-hero{min-height:500px;padding:146px 0 82px}
  .page-hero .container:before{opacity:.18;right:-80px}
}

/* Dedicated mobile composition: one theme, device-specific layout */
@media(max-width:640px){
  .container{width:min(calc(100% - 36px),var(--max))}
  .header-inner{height:76px;gap:13px}
  .site-header .brand-mark,.site-header .custom-logo{width:43px!important;height:43px!important}
  .site-header .brand-name{font-size:20px;letter-spacing:.01em;overflow:visible}
  .menu-toggle span:not(.screen-reader-text){width:31px;height:2px;margin:6px}
  .primary-nav{top:76px}

  .hero{min-height:940px;align-items:flex-start;background:#030708}
  .hero-bg{background-size:auto 67%;background-position:70% 100%;background-repeat:no-repeat}
  .hero-shade{background:linear-gradient(180deg,rgba(3,7,8,1) 0%,rgba(3,7,8,.99) 38%,rgba(3,7,8,.91) 55%,rgba(3,7,8,.36) 75%,rgba(3,7,8,.08) 100%)}
  .hero:after{z-index:-1;left:0;bottom:0;width:100%;height:44%;background:linear-gradient(90deg,rgba(3,7,8,.62),rgba(3,7,8,.3) 55%,transparent);mask-image:linear-gradient(to top,#000 0%,#000 70%,transparent 100%)}
  .hero-grid{padding-top:76px}
  .hero-copy{max-width:none;padding:102px 0 40px;transform:none}
  .hero .eyebrow{font-size:11px;letter-spacing:.18em;margin-bottom:25px}
  .hero h1{font-size:clamp(45px,12.8vw,57px);line-height:1.05;letter-spacing:-.045em;margin-bottom:24px;max-width:100%}
  .hero-intro{max-width:95%;font-size:17px;line-height:1.72;color:#d7dedb;text-shadow:0 2px 12px rgba(0,0,0,.7)}
  .button-row{gap:12px;margin-top:27px}
  .button-row .button{min-height:58px;padding:13px 18px;font-size:12px}

  .proof-bar{position:relative}
  .proof-grid{grid-template-columns:1fr;padding:8px 0}
  .proof-grid>div{min-height:86px;padding:18px 4px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .proof-grid>div:last-child{border-bottom:0}
  .proof-grid>div:before{flex-basis:39px;width:39px;height:39px}
  .proof-grid>div:after{left:0;right:0}
  .proof-grid strong{font-size:15px}.proof-grid small{font-size:13px;color:#a5b0ab}

  .page-hero{min-height:445px;padding:128px 0 67px}
  .page-hero h1{font-size:45px;line-height:1.06}
  .page-hero p:last-child{font-size:17px;line-height:1.65}
  .page-hero .container:before{display:none}

  .service-detail{padding:27px 24px;gap:10px}
  .service-detail>span{font-size:15px}
  .service-detail h2{font-size:28px}
}

@media(max-width:380px){
  .site-header .brand-name{font-size:18px}
  .hero h1{font-size:43px}
  .hero-intro{font-size:16px}
  .hero{min-height:900px}
}

/* Braluso Digital Premium v12 — focused visual corrections after live desktop/mobile review */

/* Desktop hero: crisp high-resolution artwork, no stretching, and a soft natural line fade. */
.hero{min-height:740px;background:#030708;isolation:isolate}
.hero-bg{
  background-image:var(--hero-image);
  background-size:auto 100%;
  background-position:right center;
  background-repeat:no-repeat;
  transform:none;
  filter:none;
}
.hero-shade{
  background:linear-gradient(90deg,
    rgba(3,7,8,1) 0%,
    rgba(3,7,8,.98) 30%,
    rgba(3,7,8,.88) 45%,
    rgba(3,7,8,.24) 66%,
    rgba(3,7,8,0) 86%);
}
/* Replace the v11 hard mask with a softer fade that hides the embedded line endings. */
.hero:after{
  content:"";
  position:absolute;
  z-index:0;
  left:0;
  bottom:0;
  width:66%;
  height:48%;
  pointer-events:none;
  background:linear-gradient(90deg,
    rgba(3,7,8,.10) 0%,
    rgba(3,7,8,.28) 46%,
    rgba(3,7,8,.72) 75%,
    rgba(3,7,8,.98) 100%);
  -webkit-mask-image:linear-gradient(to top,#000 0%,#000 62%,transparent 100%);
  mask-image:linear-gradient(to top,#000 0%,#000 62%,transparent 100%);
}
.hero-copy{max-width:635px;transform:translate(22px,-44px)}

/* Internal page headers: return to the cleaner v10 treatment. */
.page-hero{
  min-height:auto;
  padding:168px 0 96px;
  background:radial-gradient(circle at 88% 35%,rgba(114,207,54,.10),transparent 31%),#05090a;
}
.page-hero:after{
  right:-210px;
  top:56px;
  width:560px;
  height:560px;
  border-color:rgba(114,207,54,.11);
}
.page-hero .container:before{display:none!important}
.page-hero p:last-child{font-size:18px;color:#cbd3cf}

/* Proof strip: minimal and brand-led, without generic decorative icons. */
.proof-grid>div{
  min-height:86px;
  padding:22px 28px;
  gap:14px;
  transform:none;
}
.proof-grid>div:before,
.proof-grid>div:after{display:none!important}
.proof-grid>div:hover{background:rgba(114,207,54,.025);transform:none}
.proof-grid b{
  flex:0 0 auto;
  font-size:13px;
  letter-spacing:.08em;
}
.proof-grid strong{font-size:14px}
.proof-grid small{font-size:12px;color:#9aa59f}

@media(min-width:1400px){
  .hero-bg{background-size:auto 100%;background-position:right center}
  .hero-copy{transform:translate(28px,-48px)}
}

@media(max-width:1100px){
  .hero-bg{background-size:cover;background-position:64% center}
  .hero-copy{transform:translateY(-22px)}
}

@media(max-width:980px){
  .hero-copy{transform:none}
  .page-hero{padding:145px 0 80px}
}

/* Mobile: remove the large blank gap under the header while preserving the image and readability. */
@media(max-width:640px){
  .hero{min-height:835px;align-items:flex-start}
  .hero-grid{padding-top:76px}
  .hero-copy{padding:42px 0 34px;transform:none}
  .hero .eyebrow{margin-bottom:20px}
  .hero-bg{background-size:auto 62%;background-position:68% 100%}
  .hero-shade{background:linear-gradient(180deg,rgba(3,7,8,1) 0%,rgba(3,7,8,.99) 42%,rgba(3,7,8,.88) 60%,rgba(3,7,8,.30) 79%,rgba(3,7,8,.06) 100%)}
  .hero:after{width:100%;height:42%;background:linear-gradient(90deg,rgba(3,7,8,.58),rgba(3,7,8,.28) 58%,transparent);-webkit-mask-image:linear-gradient(to top,#000 0%,#000 66%,transparent 100%);mask-image:linear-gradient(to top,#000 0%,#000 66%,transparent 100%)}
  .hero h1{font-size:clamp(43px,12vw,54px)}
  .hero-intro{font-size:17px;line-height:1.68}
  .button-row{margin-top:24px}

  .proof-grid>div{min-height:76px;padding:15px 2px}
  .proof-grid b{font-size:12px}
  .proof-grid strong{font-size:14px}
  .proof-grid small{font-size:12.5px}

  .page-hero{min-height:auto;padding:124px 0 66px}
  .page-hero:after{right:-340px;top:30px}
}

@media(max-width:380px){
  .hero{min-height:810px}
  .hero-copy{padding-top:34px}
}

/* ==========================================================
   Braluso Digital Premium v13 — final responsive refinements
   ========================================================== */

/* Seamless rebuilt hero: one clean artwork, no decorative line overlays. */
.hero{
  min-height:760px;
  background:#03080a;
}
.hero-bg{
  background-image:var(--hero-image)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  transform:none!important;
}
.hero-shade{
  background:linear-gradient(90deg,rgba(2,7,9,.98) 0%,rgba(2,7,9,.92) 36%,rgba(2,7,9,.55) 58%,rgba(2,7,9,.10) 100%)!important;
}
.hero-copy{
  max-width:620px;
  padding-top:105px;
  padding-bottom:82px;
}

/* Prevent all legacy line/ring decorations from appearing over the Home art. */
.hero:before,.hero:after,.hero-bg:before,.hero-bg:after,.hero-shade:before,.hero-shade:after{content:none!important;display:none!important}

/* Restore the simpler v10-style internal page heroes. */
.page-hero{
  min-height:500px!important;
  display:flex;
  align-items:center;
  padding:158px 0 88px!important;
  background:linear-gradient(110deg,#05090a 0%,#091112 62%,#0b1711 100%)!important;
}
.page-hero:before{
  content:""!important;
  display:block!important;
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.5;
  background:radial-gradient(circle at 84% 42%,rgba(114,207,54,.16),transparent 27%)!important;
  mask-image:none!important;
}
.page-hero:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  right:-130px!important;
  top:40px!important;
  width:520px!important;
  height:520px!important;
  border:1px solid rgba(114,207,54,.11)!important;
  border-radius:50%!important;
  box-shadow:none!important;
  background:none!important;
}
.page-hero .container:before,.page-hero .container:after{display:none!important;content:none!important}
.page-hero .eyebrow{margin-bottom:20px}
.page-hero h1{max-width:960px}

/* Clean, typography-led proof strip without generic decorative icons. */
.proof-grid>div:before,.proof-grid>div:after,.proof-grid span:before,.proof-grid span:after{content:none!important;display:none!important}
.proof-grid>div{gap:18px;padding:23px 0}
.proof-grid b{font-size:12px;letter-spacing:.08em}
.proof-grid strong{font-size:14px}
.proof-grid small{font-size:12px;color:#97a29d}

/* Mobile: bring the opening message much closer to the header. */
@media(max-width:640px){
  .hero{
    min-height:1120px!important;
    align-items:flex-start!important;
  }
  .hero-grid{
    padding-top:70px!important;
  }
  .hero-copy{
    padding-top:205px!important;
    padding-bottom:54px!important;
  }
  .hero-bg{
    background-size:auto 76%!important;
    background-position:66% 100%!important;
  }
  .hero-shade{
    background:linear-gradient(180deg,rgba(2,7,9,.98) 0%,rgba(2,7,9,.95) 43%,rgba(2,7,9,.60) 67%,rgba(2,7,9,.10) 100%)!important;
  }
  .hero h1{font-size:clamp(46px,12vw,58px)!important;line-height:1.07!important}
  .hero-intro{font-size:18px!important;line-height:1.75!important}
  .button-row{margin-top:28px!important;gap:14px!important}
  .proof-grid>div{padding:20px 0!important}
  .page-hero{min-height:auto!important;padding:125px 0 66px!important}
  .page-hero:after{right:-350px!important;top:15px!important}
}

@media(min-width:641px) and (max-width:980px){
  .hero-bg{background-position:58% center!important}
  .hero-copy{padding-top:110px}
}

@media(min-width:1500px){
  .hero{min-height:790px}
  .hero-bg{background-position:center center!important}
  .hero-copy{padding-top:118px}
}


/* ==========================================================
   Braluso Digital Premium v13.1 — exact sketch alignment fixes
   ========================================================== */
/* Ignore inherited v10-v12 positioning and preserve the new artwork composition. */
.hero{min-height:760px!important;background:#020708!important}
.hero-bg{background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important}
.hero-shade{background:linear-gradient(90deg,rgba(2,7,9,.99) 0%,rgba(2,7,9,.96) 31%,rgba(2,7,9,.72) 49%,rgba(2,7,9,.20) 70%,rgba(2,7,9,0) 100%)!important}
.hero-grid{padding-top:0!important}
.hero-copy{padding:112px 0 82px!important;transform:none!important;max-width:630px!important}

/* Internal heroes: restore the clean v10 look, with no circles or rings. */
.page-hero:after,.page-hero .container:after,.page-hero .container:before{content:none!important;display:none!important}
.page-hero:before{background:radial-gradient(circle at 88% 45%,rgba(114,207,54,.10),transparent 30%)!important;opacity:.55!important}

/* Premium outline icons matching the approved v13 sketch. */
.proof-grid>div{display:flex!important;align-items:center!important;gap:18px!important;padding:22px 24px!important}
.proof-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;color:var(--green)}
.proof-icon svg{width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.proof-grid b{margin-left:2px!important}

@media(max-width:640px){
  .hero{min-height:930px!important}
  .hero-grid{padding-top:0!important}
  .hero-copy{padding:38px 0 46px!important;transform:none!important}
  .hero-bg{background-size:auto 72%!important;background-position:64% 100%!important}
  .hero-shade{background:linear-gradient(180deg,rgba(2,7,9,.99) 0%,rgba(2,7,9,.96) 48%,rgba(2,7,9,.70) 68%,rgba(2,7,9,.15) 100%)!important}
  .hero h1{font-size:clamp(44px,11.5vw,56px)!important}
  .hero-intro{font-size:17px!important;line-height:1.65!important}
  .button-row{margin-top:24px!important}
  .proof-grid>div{padding:18px 0!important}
  .proof-icon{width:40px;height:40px;flex-basis:40px}
  .proof-icon svg{width:36px;height:36px}
}

/* ==========================================================
   Braluso Digital Premium v14 — branded internal hero watermark
   ========================================================== */
.page-hero{
  overflow:hidden;
  isolation:isolate;
}
.page-hero .container{
  position:relative;
  z-index:2;
}
.page-hero::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:1!important;
  width:360px!important;
  height:360px!important;
  right:8%!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  background:url('../images/brand-mark.png') center/contain no-repeat!important;
  opacity:.075!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:saturate(.75) brightness(.78)!important;
  pointer-events:none!important;
}

/* Page-by-page placement makes the design feel intentional rather than repeated. */
.page-hero--about::after{right:10%!important;top:51%!important;width:380px!important;height:380px!important;opacity:.072!important}
.page-hero--services::after{right:7%!important;top:49%!important;width:350px!important;height:350px!important;opacity:.068!important}
.page-hero--plans::after{right:9%!important;top:43%!important;width:365px!important;height:365px!important;opacity:.07!important}
.page-hero--contact::after{right:6%!important;top:54%!important;width:345px!important;height:345px!important;opacity:.065!important}
.page-hero--meeting::after{right:8%!important;top:50%!important;width:350px!important;height:350px!important;opacity:.066!important}

/* Keep copy comfortably clear of the watermark on medium screens. */
@media (max-width:1100px){
  .page-hero::after{right:-30px!important;width:300px!important;height:300px!important;opacity:.058!important}
  .page-hero h1,.page-hero p:last-child{max-width:72%}
}

/* Mobile: a smaller, softer watermark placed behind the open dark area. */
@media (max-width:640px){
  .page-hero{
    padding-top:102px!important;
    padding-bottom:58px!important;
  }
  .page-hero::after{
    display:block!important;
    width:205px!important;
    height:205px!important;
    right:-48px!important;
    top:48%!important;
    transform:translateY(-50%)!important;
    opacity:.045!important;
    filter:saturate(.65) brightness(.70)!important;
  }
  .page-hero--about::after{right:-54px!important;top:50%!important}
  .page-hero--services::after{right:-42px!important;top:47%!important}
  .page-hero--plans::after{right:-50px!important;top:44%!important}
  .page-hero--contact::after{right:-58px!important;top:52%!important}
  .page-hero--meeting::after{right:-48px!important;top:50%!important}
  .page-hero h1,.page-hero p:last-child{max-width:100%}
}

/* ==========================================================
   Braluso Digital Premium v15 — final artwork & watermark pass
   ========================================================== */

/* Desktop Home: preserve the complete artwork instead of cropping it with cover.
   The image is anchored to the right while an independent gradient protects copy. */
@media (min-width:981px){
  .hero{
    min-height:760px!important;
    background:#020708!important;
  }
  .hero-bg{
    background-size:auto 100%!important;
    background-position:right center!important;
    background-repeat:no-repeat!important;
  }
  .hero-shade{
    background:linear-gradient(90deg,
      rgba(2,7,9,1) 0%,
      rgba(2,7,9,.99) 27%,
      rgba(2,7,9,.94) 39%,
      rgba(2,7,9,.72) 52%,
      rgba(2,7,9,.28) 66%,
      rgba(2,7,9,0) 79%)!important;
  }
  .hero-copy{
    position:relative;
    z-index:3;
  }
}

/* Slightly taller large-screen composition, while retaining the full image. */
@media (min-width:1500px){
  .hero{min-height:790px!important}
  .hero-bg{background-size:auto 100%!important;background-position:right center!important}
}

/* Internal page watermark: one reliable coordinate system for every page. */
.page-hero::after,
.page-hero--about::after,
.page-hero--services::after,
.page-hero--plans::after,
.page-hero--contact::after,
.page-hero--meeting::after{
  width:clamp(300px,24vw,380px)!important;
  height:clamp(300px,24vw,380px)!important;
  right:clamp(28px,7vw,112px)!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  background:url('../images/brand-mark.png') center/contain no-repeat!important;
  opacity:.065!important;
  filter:saturate(.72) brightness(.74) blur(1px)!important;
  clip-path:none!important;
}

/* Medium desktop/tablet: keep the full mark inside the hero boundary. */
@media (min-width:641px) and (max-width:1100px){
  .page-hero::after,
  .page-hero--about::after,
  .page-hero--services::after,
  .page-hero--plans::after,
  .page-hero--contact::after,
  .page-hero--meeting::after{
    width:270px!important;
    height:270px!important;
    right:24px!important;
    top:50%!important;
    opacity:.052!important;
  }
  .page-hero h1,.page-hero p:last-child{max-width:72%}
}

/* Mobile: smaller complete watermark in the upper-right open area. */
@media (max-width:640px){
  .page-hero::after,
  .page-hero--about::after,
  .page-hero--services::after,
  .page-hero--plans::after,
  .page-hero--contact::after,
  .page-hero--meeting::after{
    width:158px!important;
    height:158px!important;
    right:10px!important;
    top:42%!important;
    transform:translateY(-50%)!important;
    opacity:.04!important;
    filter:saturate(.62) brightness(.68) blur(.8px)!important;
  }
  .page-hero h1,.page-hero p:last-child{max-width:100%}
}


/* ==========================================================
   Braluso Digital Premium v16 — desktop hero, watermark & maintenance 2.0
   ========================================================== */
@media (min-width:981px){
  .hero-bg{
    background-image:var(--hero-image)!important;
    background-size:contain!important;
    background-position:right center!important;
    background-repeat:no-repeat!important;
  }
  .hero-shade{
    background:linear-gradient(90deg,
      rgba(2,7,9,1) 0%,
      rgba(2,7,9,.995) 29%,
      rgba(2,7,9,.96) 40%,
      rgba(2,7,9,.78) 52%,
      rgba(2,7,9,.38) 64%,
      rgba(2,7,9,.08) 77%,
      rgba(2,7,9,0) 88%)!important;
  }
}

/* Slightly smaller, complete internal-page watermark on desktop. */
@media (min-width:1101px){
  .page-hero::after,
  .page-hero--about::after,
  .page-hero--services::after,
  .page-hero--plans::after,
  .page-hero--contact::after,
  .page-hero--meeting::after{
    width:clamp(250px,20vw,320px)!important;
    height:clamp(250px,20vw,320px)!important;
    right:clamp(42px,8vw,128px)!important;
    top:50%!important;
    opacity:.055!important;
    filter:saturate(.7) brightness(.72) blur(.8px)!important;
  }
}

/* Maintenance 2.0 */
body.braluso-maintenance-v2{margin:0;background:#020607;color:#fff;min-height:100vh;overflow-x:hidden}
.maintenance-v2-screen{position:relative;min-height:100vh;display:grid;place-items:center;padding:42px 20px;background:
  radial-gradient(circle at 82% 20%,rgba(114,207,54,.13),transparent 30%),
  radial-gradient(circle at 15% 85%,rgba(114,207,54,.07),transparent 28%),
  linear-gradient(135deg,#020607 0%,#071011 58%,#020607 100%);overflow:hidden}
.maintenance-v2-screen::before{content:"";position:absolute;inset:-15%;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:54px 54px;transform:perspective(700px) rotateX(62deg) translateY(31%);transform-origin:center bottom;opacity:.42;pointer-events:none}
.maintenance-v2-wrap{position:relative;z-index:2;width:min(100%,1080px);display:grid;grid-template-columns:1.15fr .85fr;gap:24px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:rgba(4,10,11,.76);box-shadow:0 34px 100px rgba(0,0,0,.48);backdrop-filter:blur(20px);overflow:hidden}
.maintenance-v2-main{padding:70px 68px}
.maintenance-v2-side{position:relative;display:grid;place-items:center;min-height:540px;background:linear-gradient(155deg,rgba(114,207,54,.08),rgba(255,255,255,.015));border-left:1px solid rgba(255,255,255,.08);overflow:hidden}
.maintenance-v2-side::before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(114,207,54,.20);border-radius:50%;box-shadow:0 0 0 56px rgba(114,207,54,.025),0 0 0 112px rgba(114,207,54,.018)}
.maintenance-v2-logo{position:relative;z-index:2;width:235px;max-height:235px;object-fit:contain;filter:drop-shadow(0 22px 38px rgba(0,0,0,.38))}
.maintenance-v2-kicker{display:inline-flex;align-items:center;gap:10px;margin:0 0 24px;color:#8fe552;font-size:11px;font-weight:900;letter-spacing:.22em;text-transform:uppercase}
.maintenance-v2-kicker::before{content:"";width:34px;height:1px;background:#72cf36}
.maintenance-v2-main h1{max-width:640px;margin:0 0 22px;font-size:clamp(46px,6vw,76px);line-height:.98;letter-spacing:-.055em}
.maintenance-v2-main h1 span{color:#72cf36}
.maintenance-v2-copy{max-width:610px;margin:0;color:#bac5c0;font-size:18px;line-height:1.75}
.maintenance-v2-status{display:flex;align-items:center;gap:10px;margin:28px 0 0;color:#e7eee9;font-size:13px;font-weight:700}
.maintenance-v2-status i{width:9px;height:9px;border-radius:50%;background:#72cf36;box-shadow:0 0 0 7px rgba(114,207,54,.11);animation:bralusoPulse 1.8s infinite}
@keyframes bralusoPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.72);opacity:.55}}
.maintenance-v2-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.maintenance-v2-actions .button{min-width:185px}
.maintenance-v2-actions .button-outline{background:transparent;color:#fff}
.maintenance-v2-foot{margin-top:42px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);color:#73807b;font-size:12px}
@media(max-width:760px){
  .maintenance-v2-screen{padding:18px}
  .maintenance-v2-wrap{grid-template-columns:1fr}
  .maintenance-v2-main{padding:46px 28px 34px}
  .maintenance-v2-side{order:-1;min-height:235px;border-left:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .maintenance-v2-logo{width:145px;max-height:145px}
  .maintenance-v2-side::before{width:240px;height:240px;box-shadow:0 0 0 38px rgba(114,207,54,.025)}
  .maintenance-v2-main h1{font-size:clamp(42px,13vw,58px)}
  .maintenance-v2-copy{font-size:16px}
  .maintenance-v2-actions{display:grid}
  .maintenance-v2-actions .button{width:100%}
}


/* ==========================================================
   Braluso Digital Premium v16.1 — edge-to-edge desktop hero
   ========================================================== */
@media (min-width:981px){
  .hero-bg{
    inset:-2px -3px -3px 0!important;
    background-image:var(--hero-image)!important;
    background-size:auto calc(100% + 6px)!important;
    background-position:right bottom!important;
    background-repeat:no-repeat!important;
  }
}


/* ==========================================================
   Braluso Digital Premium v16.2 — mobile Home spacing only
   Desktop remains exactly as in v16.1.
   ========================================================== */
@media (max-width:640px){
  body.home .hero{
    align-items:flex-start!important;
  }
  body.home .hero-grid{
    padding-top:76px!important;
    align-self:flex-start!important;
  }
  body.home .hero-copy{
    padding-top:22px!important;
    padding-bottom:46px!important;
    transform:none!important;
  }
}

@media (max-width:380px){
  body.home .hero-copy{
    padding-top:16px!important;
  }
}


/* ==========================================================
   Braluso Digital Premium v16.3
   Desktop Home intentionally unchanged.
   ========================================================== */
@media (max-width:640px){
  body.home .hero-grid{padding-top:70px!important}
  body.home .hero-copy{
    padding-top:0!important;
    margin-top:-105px!important;
    padding-bottom:46px!important;
    transform:none!important;
  }
}
@media (max-width:380px){body.home .hero-copy{margin-top:-92px!important}}

/* Editable Maintenance pages with Braluso profile-logo watermark */
.maintenance-screen::after,
.maintenance-v2-screen::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
  background-image:var(--maintenance-watermark);
  background-repeat:no-repeat;
  background-position:var(--maintenance-watermark-position,right center);
  background-size:min(46vw,620px) auto;
  opacity:var(--maintenance-watermark-opacity,.08);
  filter:blur(.35px) saturate(.85);
}
.maintenance-screen{position:relative;overflow:hidden}
.maintenance-card{position:relative;z-index:2}
.maintenance-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:28px}
.maintenance-actions .button{min-width:180px}
.maintenance-foot{margin-top:28px!important;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);color:#7f8b85!important;font-size:12px!important}
.maintenance-v2-wrap{z-index:2}
.maintenance-v2-side{background:linear-gradient(155deg,rgba(114,207,54,.07),rgba(255,255,255,.012))}
.maintenance-v2-side::after{content:"";position:absolute;inset:0;background-image:var(--maintenance-watermark);background-repeat:no-repeat;background-position:center;background-size:72% auto;opacity:calc(var(--maintenance-watermark-opacity,.11) * 6.5);filter:drop-shadow(0 22px 38px rgba(0,0,0,.32));z-index:2}
@media(max-width:760px){
  .maintenance-screen::after,.maintenance-v2-screen::after{background-size:88vw auto;background-position:center 38%;opacity:calc(var(--maintenance-watermark-opacity,.08) * .75)}
  .maintenance-v2-side{display:none}
  .maintenance-v2-wrap{grid-template-columns:1fr}
  .maintenance-v2-main{position:relative;z-index:3}
  .maintenance-actions{display:grid}.maintenance-actions .button{width:100%}
}


/* ==========================================================
   Braluso Digital Premium v17 stable refinements
   WhatsApp actions and tighter mobile Home flow.
   Desktop Home intentionally remains unchanged.
   ========================================================== */
.whatsapp-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;fill:currentColor;flex:0 0 20px}
.whatsapp-button{display:inline-flex!important;align-items:center;justify-content:center;gap:10px}
.contact-whatsapp a{display:inline-flex;align-items:center;gap:9px;color:inherit;text-decoration:none;font-weight:600}
.contact-whatsapp a:hover{color:var(--green)}
.contact-whatsapp .whatsapp-icon{color:#25d366}

@media (max-width:640px){
  /* Preserve the approved copy position and remove the excessive image tail. */
  body.home .hero{min-height:760px!important}
  body.home .hero-copy{padding-bottom:18px!important}
  body.home .hero-bg{background-size:auto 68%!important;background-position:64% 100%!important}
  body.home .proof-bar{margin-top:0!important}
}
@media (max-width:380px){body.home .hero{min-height:740px!important}}


/* ==========================================================
   Braluso Digital Premium v17.1
   - Tighter Home proof-bar spacing on mobile only.
   - Clickable WhatsApp contact in the footer on all screens.
   Desktop Home remains unchanged.
   ========================================================== */
.footer-whatsapp a{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:inherit;
  text-decoration:none;
}
.footer-whatsapp a:hover{color:var(--green)}
.footer-whatsapp .whatsapp-icon{
  width:18px;
  height:18px;
  flex:0 0 18px;
  color:#25d366;
}

@media (max-width:640px){
  body.home .hero{min-height:700px!important}
}
@media (max-width:380px){
  body.home .hero{min-height:690px!important}
}


/* v18 conversion, trust and editable-content refinements */
.hero-microcopy{margin-top:18px;font-size:14px;opacity:.82;letter-spacing:.02em}.trust-section{background:#f3f7f5}.trust-grid,.results-grid,.testimonial-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.trust-grid article,.results-grid article,.testimonial-grid blockquote{background:#fff;border:1px solid rgba(9,29,23,.1);border-radius:18px;padding:28px;box-shadow:0 12px 35px rgba(4,18,14,.06)}.trust-grid article>span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#dff7e9;color:#08743e;font-weight:800}.trust-grid h3{margin:18px 0 8px}.results-section{background:#07130f;color:#fff}.results-grid{grid-template-columns:repeat(3,1fr)}.results-grid article{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}.results-grid strong{font-size:clamp(38px,5vw,64px);color:#34df82}.results-grid h3{margin:12px 0 6px}.testimonial-grid{grid-template-columns:repeat(3,1fr)}.testimonial-grid blockquote{margin:0}.stars{letter-spacing:3px;color:#0e9e55}.testimonial-grid blockquote>p{font-size:18px;line-height:1.7}.testimonial-grid footer{display:flex;flex-direction:column;gap:3px}.testimonial-grid footer span{font-size:14px;opacity:.7}.founder-section{background:#eef4f1}.founder-grid{display:grid;grid-template-columns:minmax(280px,.8fr) 1.2fr;gap:64px;align-items:center}.founder-photo img,.founder-placeholder{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:24px}.founder-placeholder{display:grid;place-items:center;background:#07130f;color:#34df82;font-size:120px;font-weight:800}.founder-section h3{margin:22px 0 2px}.founder-section small{display:block;margin-bottom:18px}.plan-ideal{padding:16px 0;margin:16px 0;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);display:flex;flex-direction:column;gap:5px}.plan-ideal strong{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.footer-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:22px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);margin-top:32px;font-size:13px}.site-content p,.service-card p,.service-detail p,.value-list p{line-height:1.72}
@media(max-width:900px){.trust-grid{grid-template-columns:repeat(2,1fr)}.results-grid,.testimonial-grid{grid-template-columns:1fr}.founder-grid{grid-template-columns:1fr;gap:32px}.founder-photo{max-width:520px}.footer-trust{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.trust-grid{grid-template-columns:1fr}.trust-grid article,.results-grid article,.testimonial-grid blockquote{padding:22px}.hero-microcopy{font-size:12px}.footer-trust{grid-template-columns:1fr}}


/* ==========================================================
   Braluso Digital Premium v18.2 — requested focused fixes only
   ========================================================== */
.site-header .brand{gap:14px}
.site-header .brand-mark,.site-header .custom-logo{width:64px!important;height:58px!important;object-fit:contain}
.site-header .custom-logo-link{display:flex;align-items:center}

@media (max-width:640px){
  .site-header .brand-mark,.site-header .custom-logo{width:54px!important;height:50px!important}
  body.home .hero-grid{width:min(calc(100% - 32px),var(--max))!important;padding-left:0!important;padding-right:0!important}
  body.home .hero-copy{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;transform:none!important;overflow:visible!important}
  body.home .hero h1{font-size:clamp(39px,10.8vw,50px)!important;line-height:1.07!important;letter-spacing:-.04em!important;max-width:100%!important;overflow-wrap:normal!important;word-break:normal!important}
}
@media (max-width:380px){
  body.home .hero h1{font-size:38px!important}
}

/* ==========================================================
   Braluso Digital Premium v18.3 — mobile header/hero alignment
   ========================================================== */
@media (max-width:640px){
  /* Keep the fixed header and brand elements vertically centred. */
  .site-header .header-inner{height:70px!important;align-items:center!important}
  .site-header .brand{height:70px!important;align-items:center!important;gap:12px!important}
  .site-header .brand-mark,
  .site-header .custom-logo{width:50px!important;height:50px!important;display:block!important;object-fit:contain!important;object-position:center!important;transform:translateY(3px)!important}
  .site-header .custom-logo-link{height:70px!important;display:flex!important;align-items:center!important}
  .site-header .brand-name{display:flex!important;align-items:center!important;line-height:1!important;margin:0!important;padding:0!important}

  /* Cancel the old negative offset that pulled the Home heading under the fixed header. */
  body.home .hero-grid{padding-top:70px!important;align-self:flex-start!important}
  body.home .hero-copy{margin-top:0!important;padding-top:24px!important;padding-bottom:46px!important}
}
@media (max-width:380px){
  body.home .hero-copy{margin-top:0!important;padding-top:20px!important}
}

/* ==========================================================
   Braluso Digital Premium v18.4 — optical brand alignment
   ========================================================== */
.site-header .brand{
  display:flex!important;
  align-items:center!important;
}
.site-header .brand-mark,
.site-header .custom-logo{
  display:block!important;
  flex:0 0 auto!important;
  transform:translateY(7px)!important;
}
.site-header .custom-logo-link{
  display:flex!important;
  align-items:center!important;
  line-height:0!important;
}
.site-header .brand-name{
  display:block!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
}
@media (max-width:640px){
  .site-header .brand-mark,
  .site-header .custom-logo{
    transform:translateY(5px)!important;
  }
}


/* ==========================================================
   Braluso Digital Premium v18.5 — final mobile brand alignment
   ========================================================== */
@media (max-width:640px){
  .site-header .brand-mark,
  .site-header .custom-logo{
    transform:translateY(8px)!important;
  }
}

/* v18.6 — subtle motion and micro-interactions */
@media (hover:hover) and (pointer:fine){
  .service-card,
  .trust-grid article,
  .process-step,
  .value-list>div,
  .results-grid article,
  .testimonial-grid blockquote,
  .price-card,
  .accordion details{
    transition:transform .28s cubic-bezier(.2,.7,.2,1),box-shadow .28s ease,border-color .28s ease,background-color .28s ease;
    will-change:transform;
  }
  .service-card:hover,
  .trust-grid article:hover,
  .process-step:hover,
  .value-list>div:hover,
  .results-grid article:hover,
  .testimonial-grid blockquote:hover,
  .price-card:not(.featured):hover,
  .accordion details:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 42px rgba(4,18,14,.12);
    border-color:rgba(114,207,54,.48);
  }
  .value-list>div:hover,
  .results-grid article:hover{
    background-color:rgba(255,255,255,.055);
    box-shadow:0 18px 42px rgba(0,0,0,.24);
  }
  .service-card .service-icon{transition:transform .28s ease,background-color .28s ease,border-color .28s ease}
  .service-card:hover .service-icon{transform:scale(1.06);background:rgba(114,207,54,.08);border-color:var(--green)}
  .button{position:relative;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease,border-color .22s ease}
  .button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(114,207,54,.18)}
  .button:active{transform:translateY(0)}
}

/* Staggered, restrained scroll reveals */
.reveal{transition:opacity .62s ease,transform .62s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.service-grid .reveal:nth-child(2),.trust-grid .reveal:nth-child(2),.process-grid .reveal:nth-child(2),.results-grid .reveal:nth-child(2),.testimonial-grid .reveal:nth-child(2){--reveal-delay:70ms}
.service-grid .reveal:nth-child(3),.trust-grid .reveal:nth-child(3),.process-grid .reveal:nth-child(3),.results-grid .reveal:nth-child(3),.testimonial-grid .reveal:nth-child(3){--reveal-delay:140ms}
.service-grid .reveal:nth-child(4),.trust-grid .reveal:nth-child(4),.process-grid .reveal:nth-child(4){--reveal-delay:210ms}

/* Hero entrance: fast enough to feel responsive, slow enough to feel polished */
body.home.motion-ready .hero-copy .eyebrow,
body.home.motion-ready .hero-copy h1,
body.home.motion-ready .hero-copy .hero-intro,
body.home.motion-ready .hero-copy .button-row,
body.home.motion-ready .hero-copy .hero-microcopy{
  opacity:0;
  transform:translateY(12px);
}
body.home.motion-ready.motion-loaded .hero-copy .eyebrow,
body.home.motion-ready.motion-loaded .hero-copy h1,
body.home.motion-ready.motion-loaded .hero-copy .hero-intro,
body.home.motion-ready.motion-loaded .hero-copy .button-row,
body.home.motion-ready.motion-loaded .hero-copy .hero-microcopy{
  opacity:1;
  transform:none;
  transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1);
}
body.home.motion-ready.motion-loaded .hero-copy h1{transition-delay:70ms}
body.home.motion-ready.motion-loaded .hero-copy .hero-intro{transition-delay:140ms}
body.home.motion-ready.motion-loaded .hero-copy .button-row{transition-delay:210ms}
body.home.motion-ready.motion-loaded .hero-copy .hero-microcopy{transition-delay:280ms}

/* Counter values stay stable while JavaScript animates only verified numeric metrics. */
.results-grid strong[data-counter-ready="true"]{font-variant-numeric:tabular-nums}

@media (max-width:640px){
  .reveal{transition-duration:.48s;transform:translateY(12px)}
  body.home.motion-ready .hero-copy .eyebrow,
  body.home.motion-ready .hero-copy h1,
  body.home.motion-ready .hero-copy .hero-intro,
  body.home.motion-ready .hero-copy .button-row,
  body.home.motion-ready .hero-copy .hero-microcopy{transform:translateY(8px)}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal,
  .reveal.visible,
  body.home.motion-ready .hero-copy .eyebrow,
  body.home.motion-ready .hero-copy h1,
  body.home.motion-ready .hero-copy .hero-intro,
  body.home.motion-ready .hero-copy .button-row,
  body.home.motion-ready .hero-copy .hero-microcopy,
  body.home.motion-ready.motion-loaded .hero-copy .eyebrow,
  body.home.motion-ready.motion-loaded .hero-copy h1,
  body.home.motion-ready.motion-loaded .hero-copy .hero-intro,
  body.home.motion-ready.motion-loaded .hero-copy .button-row,
  body.home.motion-ready.motion-loaded .hero-copy .hero-microcopy{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
    animation:none!important;
  }
}

/* Braluso Digital Premium v19 — final polish */
:root{
  --section-space:clamp(96px,8vw,132px);
  --shadow-premium:0 24px 70px rgba(5,9,10,.12);
  --ease-premium:cubic-bezier(.22,1,.36,1);
}
body{font-size:17px;letter-spacing:-.005em}
.section{padding:var(--section-space) 0}
.section-heading{margin-bottom:clamp(52px,5vw,72px)}
.section-heading h2,.section h2,.final-cta h2{letter-spacing:-.045em}
.hero{isolation:isolate}
.hero-bg{transform:scale(1.015);transition:transform 8s ease-out;will-change:transform}
body.motion-loaded .hero-bg{transform:scale(1.045)}
.hero-shade{background:
 radial-gradient(circle at 74% 40%,rgba(114,207,54,.16),transparent 30%),
 linear-gradient(90deg,rgba(var(--hero-overlay-rgb,3,7,8),.995) 0%,rgba(var(--hero-overlay-rgb,3,7,8),.94) 40%,rgba(var(--hero-overlay-rgb,3,7,8),.48) 70%,rgba(var(--hero-overlay-rgb,3,7,8),.12) 100%)}
.hero-copy{max-width:690px}
.hero h1{max-width:13ch;text-wrap:balance}
.hero-intro{font-size:19px;line-height:1.72}
.button{position:relative;overflow:hidden;transition:transform .25s var(--ease-premium),box-shadow .25s ease,background-color .25s ease,border-color .25s ease}
.button:after{content:"→";margin-left:9px;transition:transform .25s var(--ease-premium)}
.button:hover:after{transform:translateX(4px)}
.button:hover{box-shadow:0 12px 32px rgba(114,207,54,.18)}
.site-header,.header-inner,.brand-mark,.custom-logo,.brand-name,.primary-nav a,.header-cta{transition:all .3s var(--ease-premium)}
.site-header.scrolled .header-inner{height:68px}
.site-header.scrolled .brand-mark,.site-header.scrolled .custom-logo{transform:scale(.9)}
.site-header.scrolled{box-shadow:0 12px 35px rgba(0,0,0,.22)}
.primary-nav a{position:relative}
.primary-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--green);transition:right .25s var(--ease-premium)}
.primary-nav a:hover:after,.primary-nav .current-menu-item>a:after{right:0}
.service-card,.trust-grid article,.process-step,.value-list>div,.value-cards article,.results-grid article,.testimonial-grid blockquote{transition:transform .28s var(--ease-premium),box-shadow .28s ease,border-color .28s ease,background-color .28s ease}
.service-card:hover,.trust-grid article:hover,.process-step:hover{transform:translateY(-6px);box-shadow:var(--shadow-premium);border-color:rgba(114,207,54,.48)}
.service-icon{transition:transform .28s var(--ease-premium),background-color .28s ease}
.service-card:hover .service-icon{transform:translateY(-2px) rotate(3deg) scale(1.05);background:rgba(114,207,54,.08)}
.trust-grid article{padding:30px}
.trust-grid article h3{margin-top:18px;font-size:20px}
.trust-grid article p{font-size:15px;line-height:1.75}
.final-cta{position:relative}
.final-cta:before{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(114,207,54,.65),transparent);box-shadow:0 0 18px rgba(114,207,54,.28)}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--green);outline-offset:4px}
.reveal{transition-duration:.7s;transition-timing-function:var(--ease-premium)}
@media(max-width:760px){
  body{font-size:16px}
  .section{padding:82px 0}
  .site-header.scrolled .header-inner{height:72px}
  .hero-bg{transform:none!important;transition:none}
  .button:after{margin-left:7px}
  .service-card:hover,.trust-grid article:hover,.process-step:hover{transform:none;box-shadow:none}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero-bg,.site-header,.header-inner,.brand-mark,.custom-logo,.brand-name,.primary-nav a,.header-cta,.button,.service-card,.trust-grid article,.process-step,.value-list>div,.value-cards article,.results-grid article,.testimonial-grid blockquote,.service-icon,.reveal{transition:none!important;animation:none!important;transform:none!important}
}

/* Braluso Digital Premium v20: cookie consent banner */
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:2000;transform:translateY(120%);transition:transform .4s ease;background:rgba(5,9,10,.97);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1);color:#dbe1de}
.cookie-banner.visible{transform:translateY(0)}
.cookie-banner-inner{width:min(calc(100% - 40px),var(--max));margin:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding:20px 0}
.cookie-banner-inner p{margin:0;max-width:640px;font-size:13px;color:#c6ceca}
.cookie-banner-inner a{color:var(--green);font-weight:700}
.cookie-banner-actions{display:flex;gap:12px;flex-shrink:0}
.cookie-banner-actions .button{min-height:40px;padding:10px 18px;font-size:11px}
@media(max-width:640px){.cookie-banner-inner{padding:18px 0}.cookie-banner-actions{width:100%}.cookie-banner-actions .button{flex:1}}

/* Braluso v19.2 — requested visual corrections only */
.about-panel{
  grid-template-rows:minmax(0,1fr) auto;
  align-items:center;
  justify-items:center;
  gap:20px;
}
.about-panel img{
  display:block;
  width:min(58%,220px);
  max-width:220px;
  max-height:230px;
  object-fit:contain;
  object-position:center;
  margin:auto;
}
.about-panel p{margin:0;text-align:center}

.proof-grid>.proof-item{
  display:grid!important;
  grid-template-columns:auto 64px 1fr;
  grid-template-rows:auto 1fr;
  column-gap:18px!important;
  align-items:center!important;
  min-height:132px;
  padding:18px 30px!important;
}
.proof-item>b{
  grid-column:1;
  grid-row:1;
  align-self:start;
  color:var(--green)!important;
  font-size:13px!important;
  line-height:1;
}
.proof-icon{
  grid-column:2;
  grid-row:1 / span 2;
  width:58px;
  height:58px;
  display:grid!important;
  place-items:center;
  color:var(--green);
}
.proof-icon svg{
  width:58px;
  height:58px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.4;
  stroke-linecap:round;
  stroke-linejoin:round;
  overflow:visible;
}
.proof-copy{
  grid-column:3;
  grid-row:1 / span 2;
  display:grid!important;
  align-content:center;
}
.proof-copy strong{font-size:17px!important;line-height:1.2}
.proof-copy small{font-size:12px!important;margin-top:5px}

@media(max-width:640px){
  .about-panel img{width:min(62%,190px);max-height:200px}
  .proof-grid>.proof-item{
    grid-template-columns:34px 58px 1fr;
    min-height:104px;
    padding:14px 0!important;
    column-gap:14px!important;
  }
  .proof-icon,.proof-icon svg{width:52px;height:52px}
  .proof-copy strong{font-size:16px!important}
}

/* Braluso v19.3 — desktop homepage refinement (mobile intentionally unchanged) */
@media (min-width:981px){
  body.home .hero{
    min-height:750px;
    align-items:center;
  }
  body.home .hero-grid{
    padding-top:78px;
  }
  body.home .hero-copy{
    max-width:760px;
    padding:96px 0 90px;
    transform:translate(-18px,-18px);
  }
  body.home .hero .eyebrow{
    margin-bottom:18px;
    font-size:12px;
    letter-spacing:.18em;
  }
  body.home .hero h1{
    max-width:15.5ch;
    margin-bottom:25px;
    font-size:clamp(54px,4.75vw,74px);
    line-height:1.045;
    letter-spacing:-.047em;
    text-wrap:balance;
  }
  body.home .hero-intro{
    max-width:680px;
    color:#d3dad6;
    font-size:18px;
    line-height:1.68;
  }
  body.home .hero .button-row{
    gap:16px;
    margin-top:30px;
  }
  body.home .hero .button-row .button{
    min-width:205px;
    padding-inline:24px;
  }
  body.home .hero .button-row .button-outline{
    min-width:210px;
    color:#f8fbf9;
    border-color:rgba(139,220,80,.88);
    background:rgba(3,8,8,.2);
  }
  body.home .hero .button-row .button-outline:hover{
    background:rgba(114,207,54,.08);
    border-color:var(--green2);
  }
  body.home .hero-microcopy{
    margin-top:17px;
    color:#d6ddd9;
    font-size:12px;
    font-weight:650;
    letter-spacing:.01em;
  }
  body.home .hero-bg{
    background-position:right center;
  }
  body.home .hero-shade{
    background:
      linear-gradient(90deg,
        rgba(3,7,8,1) 0%,
        rgba(3,7,8,.995) 23%,
        rgba(3,7,8,.96) 37%,
        rgba(3,7,8,.78) 49%,
        rgba(3,7,8,.38) 64%,
        rgba(3,7,8,.08) 82%,
        rgba(3,7,8,.12) 100%);
  }
  body.home .hero:before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    background:linear-gradient(90deg,transparent 0 76%,rgba(2,6,7,.14) 100%);
  }
  body.home .brand-mark,
  body.home .custom-logo{
    width:51px!important;
    height:51px!important;
  }
  body.home .brand-name{
    font-size:19px;
  }
  body.home .primary-nav a:after{
    bottom:-6px;
    left:13%;
  }
  body.home .primary-nav a:hover:after,
  body.home .primary-nav .current-menu-item>a:after{
    right:13%;
  }
  body.home .proof-bar{
    background:#070c0d;
    border-top-color:rgba(114,207,54,.15);
    border-bottom:1px solid rgba(255,255,255,.06);
  }
  body.home .proof-grid>.proof-item{
    min-height:142px;
    padding:22px 34px!important;
  }
  body.home .proof-icon,
  body.home .proof-icon svg{
    width:62px;
    height:62px;
  }
  body.home .proof-copy strong{
    font-size:18px!important;
  }
  body.home .proof-copy small{
    color:#96a19c;
    font-size:12.5px!important;
  }
}


/* Braluso v21 — final desktop hero polish (mobile unchanged) */
.desktop-hero-break{display:none}
@media (min-width:981px){
  body.home .desktop-hero-break{display:inline}
  body.home .hero-copy{
    max-width:820px;
    transform:translate(-18px,-10px);
  }
  body.home .hero h1{
    max-width:820px;
    font-size:clamp(52px,4.45vw,70px);
    line-height:1.055;
    letter-spacing:-.045em;
    text-wrap:initial;
  }
  body.home .hero-intro{
    max-width:710px;
  }
  body.home .hero .button-row{
    margin-top:48px;
  }
  body.home .hero-microcopy{
    margin-top:15px;
  }
  body.home .hero-bg{
    inset:0 -40px 0 0;
    filter:brightness(1.08);
    background-position:right center;
  }
  body.home .hero-shade{
    background:linear-gradient(90deg,
      rgba(3,7,8,1) 0%,
      rgba(3,7,8,.995) 22%,
      rgba(3,7,8,.955) 35%,
      rgba(3,7,8,.76) 47%,
      rgba(3,7,8,.34) 61%,
      rgba(3,7,8,.075) 80%,
      rgba(3,7,8,.12) 100%);
  }
  body.home .brand-mark,
  body.home .custom-logo{
    width:54px!important;
    height:54px!important;
  }
  body.home .primary-nav .current-menu-item>a{
    color:#83d94f;
  }
  body.home .primary-nav a:after{
    bottom:-4px;
  }
  body.home .hero .button-row .button-outline:hover{
    color:#fff;
    border-color:#fff;
    background:rgba(255,255,255,.035);
  }
  body.home .hero .button-row .button-outline::after{
    content:'→';
    margin-left:10px;
    transition:transform .18s ease;
  }
  body.home .hero .button-row .button-outline:hover::after{
    transform:translateX(2px);
  }
}


/* Braluso v21.1 — enforce the approved three-line desktop headline */
.desktop-hero-line{display:inline}
@media (min-width:981px){
  body.home .desktop-hero-line{display:block;white-space:nowrap}
  body.home .hero-copy{max-width:940px}
  body.home .hero h1{max-width:none;font-size:clamp(50px,4.05vw,66px)}
}

/* Braluso v21.2 — exact desktop line breaks and restored mobile headline */
.desktop-hero-title{display:none}
.mobile-hero-title{display:inline;color:#fff}

@media (min-width:981px){
  body.home .desktop-hero-title{display:block;color:#fff}
  body.home .mobile-hero-title{display:none}
  body.home .desktop-hero-line{display:block;white-space:nowrap;color:#fff}
  body.home .desktop-hero-line .hero-title-accent{color:var(--green)}
}

@media (max-width:980px){
  body.home .hero h1 span.mobile-hero-title{display:inline;color:#fff!important}
}


/* Braluso v21.3 — highlight the customer outcome on desktop and mobile */
@media (min-width:981px){
  body.home .desktop-hero-line .hero-title-accent{color:var(--green)}
}
@media (max-width:980px){
  body.home .hero h1 .mobile-hero-title{color:#fff!important}
  body.home .hero h1 .mobile-hero-title .hero-title-accent{color:var(--green)!important}
}

/* v22 technical consolidation layer */
.hero-bg-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--hero-position);z-index:0}
.hero>.hero-shade,.hero>.container{position:relative;z-index:1}
.menu-open{overflow:hidden}.form-privacy{font-size:.86rem;line-height:1.55;color:#66736d}.form-privacy a{text-decoration:underline}
.cookie-manage{position:fixed;right:16px;bottom:16px;z-index:9997;border:1px solid rgba(255,255,255,.25);background:#07100d;color:#fff;border-radius:999px;padding:9px 14px;font:inherit;font-size:.78rem;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.2)}
.cookie-manage:focus-visible{outline:3px solid #62e6a5;outline-offset:3px}
.meeting-points h3{margin:0 0 .35rem;font-size:1rem}
@media(max-width:767px){.cookie-manage{right:10px;bottom:10px}.hero{min-height:min(var(--hero-height),92svh)}}

/* Braluso v22.1 — desktop hero framing: preserve the complete skyline and tower */
@media (min-width:981px){
  body.home .hero-bg-image{
    object-fit:contain;
    object-position:right center;
    background:#040809;
  }
}

/* Braluso v22.2 — mobile hero framing: keep skyline below the copy */
@media (max-width:980px){
  body.home .hero{
    background:#040809;
  }
  body.home .hero-bg-image{
    inset:auto 0 0 0;
    width:100%;
    height:auto;
    max-width:none;
    object-fit:contain;
    object-position:right bottom;
    transform:none!important;
  }
  body.home .hero-shade{
    background:
      linear-gradient(180deg,
        rgba(3,7,8,1) 0%,
        rgba(3,7,8,1) 47%,
        rgba(3,7,8,.94) 58%,
        rgba(3,7,8,.58) 73%,
        rgba(3,7,8,.18) 100%),
      linear-gradient(90deg,
        rgba(3,7,8,.92) 0%,
        rgba(3,7,8,.64) 50%,
        rgba(3,7,8,.12) 100%);
  }
}

/* Braluso v22.3 — refined mobile skyline position */
@media (max-width:980px){
  body.home .hero-bg-image{
    transform:translateY(-56px)!important;
  }
}
@media (max-width:380px){
  body.home .hero-bg-image{
    transform:translateY(-46px)!important;
  }
}

/* Braluso v22.4 — mobile uses desktop-scale crop: water/dark area only */
@media (max-width:980px){
  body.home .hero-bg-image{
    inset:0 auto 0 0;
    width:auto;
    height:100%;
    min-width:0;
    max-width:none;
    object-fit:contain;
    object-position:left bottom;
    transform:none!important;
  }
  body.home .hero-shade{
    background:
      linear-gradient(180deg,
        rgba(3,7,8,1) 0%,
        rgba(3,7,8,.99) 58%,
        rgba(3,7,8,.88) 76%,
        rgba(3,7,8,.42) 100%),
      linear-gradient(90deg,
        rgba(3,7,8,.96) 0%,
        rgba(3,7,8,.82) 68%,
        rgba(3,7,8,.58) 100%);
  }
}

/* Braluso v22.5 — subtle mobile crop shift to reveal river and first skyline buildings */
@media (max-width:980px){
  body.home .hero-bg-image{
    transform:translateX(-5%)!important;
  }
}
@media (max-width:380px){
  body.home .hero-bg-image{
    transform:translateX(-4%)!important;
  }
}


/* Braluso v22.6 — stronger mobile crop shift and softer watermark-style hero image */
body.home .hero-bg-image{
  opacity:.70!important;
  filter:saturate(.70) brightness(.88)!important;
}
@media (max-width:980px){
  body.home .hero-bg-image{
    transform:translateX(-18%)!important;
  }
}
@media (max-width:380px){
  body.home .hero-bg-image{
    transform:translateX(-15%)!important;
  }
}

/* Braluso v22.7 — mobile hero: lower opacity and reveal more skyline */
@media (max-width:980px){
  body.home .hero-bg-image{
    opacity:.50!important;
    filter:saturate(.62) brightness(.82)!important;
    transform:translateX(-32%)!important;
  }
}
@media (max-width:380px){
  body.home .hero-bg-image{
    transform:translateX(-28%)!important;
  }
}


/* Braluso v23.0 Stable — conversion-led plans and additional services */
.plan-includes-label{display:block;margin:26px 0 10px;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--black)}
.price-card.featured .plan-includes-label{color:var(--black)}
.price-card ul li::before{content:"✓";font-weight:800;margin-right:10px;color:var(--green)}
.pricing-summary{margin-top:42px;padding:30px 34px;border:1px solid rgba(5,9,10,.12);background:#fff;text-align:center}
.pricing-summary h2{margin:0 0 10px}
.pricing-summary p{max-width:780px;margin:8px auto}
.plans-additional{background:var(--black);color:#fff}
.plans-additional .section-heading p:not(.eyebrow){color:rgba(255,255,255,.68)}
.additional-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.additional-service-card{padding:28px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035)}
.additional-service-card h3{margin:0 0 12px;color:#fff}
.additional-service-card p{min-height:96px;color:rgba(255,255,255,.67)}
.additional-service-card strong{display:block;margin-top:20px;color:var(--green)}
.service-detail:first-child{border:1px solid rgba(114,207,54,.35);box-shadow:0 20px 55px rgba(5,9,10,.08)}
@media(max-width:980px){.additional-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.additional-services-grid{grid-template-columns:1fr}.additional-service-card p{min-height:0}.pricing-summary{padding:24px 20px}}
