:root{
  --ink:#061526;
  --ink-2:#0a2138;
  --navy:#061d36;
  --navy-2:#07365c;
  --cyan:#25d9f8;
  --aqua:#5deaf2;
  --blue:#1975ff;
  --royal:#0759cb;
  --ice:#eafcff;
  --mist:#f4fbff;
  --white:#ffffff;
  --muted:#91a8bd;
  --line:rgba(109,224,255,.18);
  --glow:0 0 40px rgba(37,217,248,.25);
  --radius-xl:32px;
  --radius-lg:24px;
  --radius-md:18px;
  --shadow:0 20px 70px rgba(0,18,42,.18);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Montserrat",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:var(--mist);
  overflow-x:hidden;
}
body.dark-page{background:var(--ink);color:var(--white)}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:var(--cyan);color:var(--ink)}

/* Progressive enhancement */
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.75,.2,1),transform .8s cubic-bezier(.2,.75,.2,1)}
.js [data-reveal].is-visible{opacity:1;transform:none}

.site-progress{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--cyan),var(--blue));z-index:2000;box-shadow:0 0 14px rgba(37,217,248,.7)}

.navbar.sea-nav{
  background:rgba(4,20,38,.82);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border-bottom:1px solid rgba(255,255,255,.08);
  transition:.25s ease;
}
.navbar.sea-nav.scrolled{background:rgba(4,20,38,.96);box-shadow:0 10px 35px rgba(0,0,0,.16)}
.brand-lockup{display:flex;align-items:center;gap:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:white}
.brand-lockup img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 7px 18px rgba(37,217,248,.18))}
.brand-lockup small{font-size:.64rem;color:#91eaff;letter-spacing:.2em;display:block;font-weight:600}
.sea-nav .nav-link{color:rgba(255,255,255,.76)!important;font-weight:650;font-size:.86rem;letter-spacing:.04em;position:relative;padding:.7rem .7rem!important}
.sea-nav .nav-link::after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:.36rem;height:1px;background:var(--cyan);transform:scaleX(0);transition:.25s;transform-origin:left}
.sea-nav .nav-link:hover,.sea-nav .nav-link.active{color:white!important}
.sea-nav .nav-link:hover::after,.sea-nav .nav-link.active::after{transform:scaleX(1)}
.sea-nav .navbar-toggler{border:1px solid rgba(255,255,255,.18);box-shadow:none!important}
.sea-nav .navbar-toggler-icon{filter:invert(1)}

.btn-sea,.btn-ghost,.btn-light-sea{border-radius:999px;padding:.84rem 1.2rem;font-weight:800;font-size:.82rem;letter-spacing:.055em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.55rem;transition:.25s ease;border:1px solid transparent}
.btn-sea{background:linear-gradient(90deg,var(--cyan),#45bfff);color:#032038;box-shadow:0 10px 28px rgba(37,217,248,.22)}
.btn-sea:hover{transform:translateY(-2px);color:#032038;box-shadow:0 15px 35px rgba(37,217,248,.32)}
.btn-ghost{border-color:rgba(255,255,255,.24);color:white;background:rgba(255,255,255,.04)}
.btn-ghost:hover{border-color:rgba(37,217,248,.8);color:white;background:rgba(37,217,248,.08)}
.btn-light-sea{background:white;color:var(--navy);box-shadow:var(--shadow)}
.btn-light-sea:hover{transform:translateY(-2px);color:var(--royal)}

.hero-home{min-height:100svh;background:radial-gradient(circle at 78% 20%,rgba(38,221,248,.22),transparent 28%),radial-gradient(circle at 15% 20%,rgba(16,103,255,.23),transparent 28%),linear-gradient(135deg,#031426 0%,#072747 55%,#06355e 100%);color:white;position:relative;display:flex;align-items:center;padding:130px 0 70px;overflow:hidden}
.hero-home::before{content:"";position:absolute;inset:-30%;background:repeating-radial-gradient(ellipse at center,transparent 0 74px,rgba(109,224,255,.045) 75px 77px);transform:rotate(-15deg);pointer-events:none}
.hero-home::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-14%;height:42%;background:linear-gradient(180deg,rgba(37,217,248,.18),rgba(4,17,31,.0)),radial-gradient(70% 80% at 50% 100%,rgba(17,101,255,.45),transparent 70%);clip-path:polygon(0 42%,10% 32%,25% 45%,42% 25%,60% 40%,76% 20%,100% 38%,100% 100%,0 100%);opacity:.9}
.hero-grid{position:relative;z-index:2}
.kicker{font-size:.72rem;font-weight:900;letter-spacing:.24em;text-transform:uppercase;color:var(--cyan);display:flex;align-items:center;gap:.65rem}
.kicker::before{content:"";width:38px;height:1px;background:currentColor}
.hero-title{font-family:"Playfair Display",Georgia,serif;font-size:clamp(3.2rem,8vw,7.4rem);line-height:.89;letter-spacing:-.055em;margin:.95rem 0 1.25rem;max-width:920px}
.hero-title em{font-style:italic;font-weight:500;color:#73e8ff;text-shadow:0 0 32px rgba(37,217,248,.22)}
.hero-copy{max-width:650px;color:#c5d8e8;font-size:1.05rem;line-height:1.8}
.hero-actions{display:flex;gap:.85rem;flex-wrap:wrap;margin-top:2rem}
.hero-logo-orbit{position:relative;min-height:580px;display:flex;justify-content:center;align-items:center}
.hero-logo-orbit::before,.hero-logo-orbit::after{content:"";position:absolute;border:1px solid rgba(100,226,255,.24);border-radius:50%;animation:orbitSpin 18s linear infinite}
.hero-logo-orbit::before{width:460px;height:460px;border-style:dashed}
.hero-logo-orbit::after{width:560px;height:560px;animation-duration:28s;animation-direction:reverse}
.hero-logo{width:min(500px,88vw);filter:drop-shadow(0 25px 40px rgba(0,0,0,.34)) drop-shadow(0 0 30px rgba(37,217,248,.16));animation:floatLogo 6s ease-in-out infinite;position:relative;z-index:2}
.orbit-dot{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--cyan);box-shadow:0 0 22px var(--cyan);top:16%;right:16%;z-index:3}
@keyframes floatLogo{50%{transform:translateY(-14px)}}
@keyframes orbitSpin{to{transform:rotate(360deg)}}

.score-strip{background:#04182b;color:white;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.score-cell{padding:1.2rem 1.35rem;border-right:1px solid rgba(255,255,255,.08);height:100%}
.score-cell strong{font-family:"Playfair Display",Georgia,serif;font-size:1.9rem;color:#7befff;font-weight:700}
.score-cell span{display:block;font-size:.68rem;color:#9fb3c8;text-transform:uppercase;letter-spacing:.16em;margin-top:.2rem}

.section-pad{padding:110px 0}
.section-dark{background:var(--ink);color:white;position:relative;overflow:hidden}
.section-dark::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 10%,rgba(37,217,248,.11),transparent 26%);pointer-events:none}
.section-ice{background:linear-gradient(180deg,#f8fdff,#eaf9ff)}
.eyebrow{font-size:.7rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--royal);margin-bottom:.65rem}
.section-dark .eyebrow{color:var(--cyan)}
.display-title{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.03;letter-spacing:-.035em;margin:0}
.lead-muted{font-size:1.03rem;line-height:1.82;color:#61778c;max-width:760px}
.section-dark .lead-muted{color:#a8bed0}

.service-card{height:100%;border-radius:var(--radius-xl);padding:2rem;background:white;border:1px solid #dcedf6;box-shadow:0 18px 50px rgba(13,54,91,.08);position:relative;overflow:hidden;transition:.32s ease}
.service-card::after{content:"";position:absolute;inset:auto -20% -45% 40%;height:70%;background:radial-gradient(circle,rgba(37,217,248,.16),transparent 65%);transition:.35s ease}
.service-card:hover{transform:translateY(-8px);box-shadow:0 28px 70px rgba(8,67,116,.16);border-color:#a9eaf5}
.service-card:hover::after{transform:scale(1.15)}
.service-number{font:800 4rem/1 "Playfair Display",Georgia,serif;color:#d9f5fb;letter-spacing:-.06em}
.service-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#e2fbff,#caefff);color:var(--royal);font-size:1.55rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.service-card h3{font-weight:850;font-size:1.25rem;margin:1.35rem 0 .75rem}
.service-card p{color:#6f8395;line-height:1.75}
.link-arrow{display:inline-flex;gap:.5rem;align-items:center;font-size:.76rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--royal)}
.link-arrow i{transition:.25s}.link-arrow:hover i{transform:translateX(4px)}

.feature-panel{border-radius:42px;overflow:hidden;background:linear-gradient(145deg,#061a30,#0b3962);color:white;box-shadow:0 30px 90px rgba(3,33,57,.28);position:relative}
.feature-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 20%,rgba(37,217,248,.17),transparent 28%),radial-gradient(circle at 84% 90%,rgba(17,102,255,.22),transparent 26%);pointer-events:none}
.feature-panel .content{padding:clamp(2rem,5vw,4rem);position:relative;z-index:2}
.feature-panel .visual{min-height:520px;position:relative;background:linear-gradient(160deg,rgba(12,64,103,.5),rgba(3,18,34,.2));display:grid;place-items:center;overflow:hidden}
.feature-panel .visual img{width:90%;max-width:590px;filter:drop-shadow(0 30px 45px rgba(0,0,0,.32));border-radius:28px;transform:rotate(1.5deg)}

.athletic-band{background:#07182b;color:white;padding:16px 0;overflow:hidden;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.marquee-track{display:flex;gap:3rem;width:max-content;animation:marquee 28s linear infinite;font-size:.83rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#dffbff}
.marquee-track span::before{content:"✦";color:var(--cyan);margin-right:3rem}
@keyframes marquee{to{transform:translateX(-50%)}}

.metric{padding:1.5rem;border-left:1px solid rgba(255,255,255,.12)}
.metric .num{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.5rem,5vw,4.8rem);line-height:1;color:#78edff}
.metric .label{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:#a0b7ca;margin-top:.55rem}

.quote-card{border-radius:var(--radius-xl);background:white;padding:2.3rem;box-shadow:0 18px 55px rgba(10,52,85,.09);height:100%;border:1px solid #def0f8}
.quote-card .quote-mark{font:700 5rem/1 Georgia,serif;color:#cceff8;height:42px}
.quote-card p{font-size:1.06rem;line-height:1.78;color:#415d73}
.quote-card strong{font-size:.86rem;letter-spacing:.08em;text-transform:uppercase}

.cta-wave{background:linear-gradient(120deg,#0c5fca,#11cbe8);color:white;border-radius:42px;padding:clamp(2rem,6vw,5rem);position:relative;overflow:hidden;box-shadow:0 28px 80px rgba(11,107,194,.22)}
.cta-wave::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-55%;height:90%;border-radius:50%;border:80px solid rgba(255,255,255,.13);transform:rotate(-8deg)}
.cta-wave h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.4rem,5vw,4.6rem);line-height:1.02;position:relative;z-index:2}
.cta-wave p,.cta-wave .cta-actions{position:relative;z-index:2}

.page-hero{min-height:66vh;padding:150px 0 90px;background:linear-gradient(135deg,#031528,#07345a);color:white;position:relative;overflow:hidden;display:flex;align-items:end}
.page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 22%,rgba(37,217,248,.22),transparent 26%),linear-gradient(90deg,rgba(4,22,40,.08),rgba(4,22,40,.7));pointer-events:none}
.page-hero::after{content:"";position:absolute;width:620px;height:620px;border:1px dashed rgba(109,224,255,.18);border-radius:50%;right:-150px;top:-220px}
.page-hero .container{position:relative;z-index:2}
.page-number{font:800 clamp(4rem,10vw,9rem)/.8 "Playfair Display",Georgia,serif;color:rgba(255,255,255,.055);position:absolute;right:3vw;bottom:8%;letter-spacing:-.08em;user-select:none}
.page-hero h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(3.1rem,7vw,6.4rem);letter-spacing:-.055em;line-height:.92;max-width:870px}
.page-hero .subtitle{color:#bcd6e8;max-width:680px;line-height:1.8;font-size:1.05rem}

.sticky-card{position:sticky;top:115px;border-radius:28px;background:#071d34;color:white;padding:2rem;box-shadow:var(--shadow)}
.sticky-card .mini-label{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#7defff;font-weight:900}
.sticky-card ul{list-style:none;padding:0;margin:1.4rem 0 0}
.sticky-card li{padding:.82rem 0;border-bottom:1px solid rgba(255,255,255,.1);color:#bad0df;display:flex;align-items:center;gap:.75rem}
.sticky-card li i{color:var(--cyan)}

.timeline{position:relative;margin-top:2rem}
.timeline::before{content:"";position:absolute;left:19px;top:0;bottom:0;width:1px;background:#cae5f0}
.timeline-item{position:relative;padding:0 0 2.2rem 4rem}
.timeline-dot{position:absolute;left:8px;top:.2rem;width:23px;height:23px;border-radius:50%;background:white;border:6px solid var(--cyan);box-shadow:0 0 0 5px #e3f9ff}
.timeline-item h3{font-weight:850;font-size:1.05rem}
.timeline-item .meta{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--royal);font-weight:900}
.timeline-item p{color:#6b8296;line-height:1.7}

.pill-nav{display:flex;gap:.6rem;flex-wrap:wrap;margin:1.5rem 0 2.2rem}
.pill-nav button{border:1px solid #cfe5ef;background:white;border-radius:999px;padding:.7rem 1rem;font-weight:800;font-size:.78rem;color:#39546b;transition:.25s}
.pill-nav button.active,.pill-nav button:hover{background:var(--navy);color:white;border-color:var(--navy)}
[data-filter-item].is-hidden{display:none!important}

.program-card{border:1px solid #d8ebf4;border-radius:24px;background:white;overflow:hidden;height:100%;transition:.28s;box-shadow:0 14px 45px rgba(14,58,91,.06)}
.program-card:hover{transform:translateY(-6px);box-shadow:0 24px 65px rgba(12,66,108,.13)}
.program-head{padding:1.5rem;background:linear-gradient(135deg,#061f39,#0a4a78);color:white;min-height:150px;position:relative;overflow:hidden}
.program-head::after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-45px;top:-55px;border:24px solid rgba(80,225,255,.1)}
.program-head .tag{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:#7feeff;font-weight:900}
.program-head h3{font-family:"Playfair Display",Georgia,serif;font-size:1.65rem;margin-top:.55rem}
.program-body{padding:1.5rem}
.program-body p{color:#668095;line-height:1.7}
.program-meta{display:flex;gap:.65rem;flex-wrap:wrap}
.program-meta span{font-size:.7rem;background:#eef8fc;padding:.42rem .62rem;border-radius:999px;color:#456177;font-weight:750}

.tech-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}
.tech-card{border-radius:28px;background:linear-gradient(145deg,#081d35,#0a3153);color:white;padding:2rem;min-height:260px;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.06)}
.tech-card:nth-child(1){grid-column:span 7}.tech-card:nth-child(2){grid-column:span 5}.tech-card:nth-child(3){grid-column:span 5}.tech-card:nth-child(4){grid-column:span 7}
.tech-card::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(37,217,248,.18),transparent 68%);right:-40px;bottom:-80px}
.tech-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:rgba(99,233,255,.1);border:1px solid rgba(99,233,255,.18);color:#78eeff;font-size:1.45rem}
.tech-card h3{margin:1.2rem 0 .7rem;font-size:1.28rem;font-weight:850}
.tech-card p{color:#aec3d4;line-height:1.7;max-width:520px}

.logo-stage{border-radius:38px;background:radial-gradient(circle at 50% 30%,#0e5f90 0%,#072541 40%,#031526 85%);min-height:540px;display:grid;place-items:center;padding:2rem;position:relative;overflow:hidden}
.logo-stage::before{content:"";position:absolute;width:75%;aspect-ratio:1;border-radius:50%;border:1px dashed rgba(97,231,255,.3);animation:orbitSpin 22s linear infinite}
.logo-stage img{width:min(470px,90%);position:relative;z-index:2;filter:drop-shadow(0 22px 42px rgba(0,0,0,.35))}

.portfolio-card{border-radius:28px;background:white;border:1px solid #dcecf4;padding:1.65rem;height:100%;box-shadow:0 15px 45px rgba(11,54,89,.06)}
.portfolio-card .icon{font-size:1.4rem;color:var(--royal)}
.portfolio-card h3{font-weight:850;font-size:1.12rem;margin:.9rem 0 .55rem}
.portfolio-card p{color:#6b8294;line-height:1.68;margin:0}

.gallery-tile{border-radius:26px;overflow:hidden;min-height:260px;position:relative;background:linear-gradient(145deg,#0a3153,#081c32);color:white;padding:1.8rem;display:flex;align-items:flex-end;box-shadow:0 18px 50px rgba(11,55,90,.1)}
.gallery-tile::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(37,217,248,.22),transparent 30%)}
.gallery-tile .label{position:relative;z-index:2}
.gallery-tile .label span{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:#7defff;font-weight:900}
.gallery-tile h3{font-family:"Playfair Display",Georgia,serif;font-size:1.75rem;margin:.4rem 0 0}
.gallery-tile.logo-tile{min-height:420px;display:grid;place-items:center;padding:1rem}
.gallery-tile.logo-tile img{position:relative;z-index:2;max-height:390px;object-fit:contain}
.gallery-tile.reference-tile{padding:0;min-height:420px}
.gallery-tile.reference-tile img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:saturate(.88) contrast(1.02)}
.gallery-tile.reference-tile::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(2,15,29,.88))}
.gallery-tile.reference-tile .label{position:absolute;left:1.8rem;bottom:1.6rem;z-index:4}

.contact-shell{border-radius:34px;background:#061b31;color:white;overflow:hidden;box-shadow:0 28px 80px rgba(4,35,60,.2)}
.contact-info{padding:clamp(2rem,5vw,4rem);background:radial-gradient(circle at 20% 15%,rgba(37,217,248,.18),transparent 26%)}
.contact-info h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.3rem,4vw,4rem)}
.contact-info p{color:#aec5d7;line-height:1.8}
.contact-form{padding:clamp(2rem,5vw,4rem);background:white;color:var(--ink)}
.form-control,.form-select{border-radius:14px;border-color:#d7e6ed;padding:.86rem 1rem;box-shadow:none!important}
.form-control:focus,.form-select:focus{border-color:#51cfe8}
.form-label{font-weight:800;font-size:.75rem;letter-spacing:.04em;color:#3c566c}

footer{background:#031322;color:#9bb3c6;padding:70px 0 28px;border-top:1px solid rgba(255,255,255,.06)}
footer .footer-logo{width:120px;filter:drop-shadow(0 12px 20px rgba(0,0,0,.28))}
footer h6{color:white;font-weight:900;font-size:.74rem;text-transform:uppercase;letter-spacing:.14em}
footer a{color:#9bb3c6;display:inline-block;margin:.28rem 0;transition:.2s}
footer a:hover{color:#6de9fa}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:2.5rem;padding-top:1.4rem;font-size:.76rem}

.floating-cta{position:fixed;right:18px;bottom:18px;z-index:999;border-radius:999px;background:linear-gradient(135deg,var(--cyan),#4ba7ff);color:#06213b;box-shadow:0 14px 35px rgba(0,69,129,.28);padding:.78rem 1rem;font-weight:900;font-size:.74rem;letter-spacing:.04em;text-transform:uppercase;display:flex;align-items:center;gap:.45rem;transition:.25s}
.floating-cta:hover{transform:translateY(-3px);color:#06213b}

.modal-content{border:none;border-radius:26px;overflow:hidden;box-shadow:0 35px 95px rgba(0,0,0,.28)}
.modal-header{background:#061d36;color:white;border:0}
.modal-header .btn-close{filter:invert(1)}
.toast-container{z-index:2200}

@media (max-width:1199.98px){
  .hero-logo-orbit{min-height:500px}
  .hero-logo-orbit::before{width:390px;height:390px}.hero-logo-orbit::after{width:480px;height:480px}
}
@media (max-width:991.98px){
  .navbar-collapse{padding:1rem 0 1.2rem;border-top:1px solid rgba(255,255,255,.08);margin-top:.75rem}
  .hero-home{padding-top:120px}.hero-logo-orbit{min-height:430px;margin-top:1rem}.hero-logo-orbit::after{display:none}
  .feature-panel .visual{min-height:400px}.page-hero{min-height:58vh}
  .sticky-card{position:relative;top:0}
  .tech-card:nth-child(n){grid-column:span 12}
}
@media (max-width:767.98px){
  .section-pad{padding:78px 0}.hero-home{min-height:auto}.hero-title{font-size:clamp(3rem,16vw,5rem)}
  .hero-logo-orbit{min-height:350px}.hero-logo-orbit::before{width:310px;height:310px}
  .brand-lockup span{display:none}.brand-lockup img{width:52px;height:52px}
  .score-cell{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .feature-panel{border-radius:28px}.feature-panel .visual{min-height:320px}.page-number{display:none}
  .cta-wave{border-radius:28px}.logo-stage{min-height:390px;border-radius:28px}
  .floating-cta span{display:none}.floating-cta{width:50px;height:50px;justify-content:center;padding:0}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
  .js [data-reveal]{opacity:1;transform:none}
}

/* Home — experiência & propósito */
.experience-section{position:relative;overflow:hidden}
.experience-section::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(37,217,248,.13),transparent 68%);right:-160px;top:40px;pointer-events:none}
.experience-shell{border-radius:42px;overflow:hidden;background:white;border:1px solid #d9edf5;box-shadow:0 28px 85px rgba(7,57,94,.10);position:relative}
.experience-visual{min-height:640px;height:100%;padding:2rem 1.5rem;background:radial-gradient(circle at 62% 18%,rgba(51,226,255,.28),transparent 24%),radial-gradient(circle at 22% 82%,rgba(17,102,255,.34),transparent 32%),linear-gradient(145deg,#03172b 0%,#082d50 48%,#07588c 100%);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;color:white;isolation:isolate}
.experience-visual::before{content:"";position:absolute;inset:-25%;background:repeating-radial-gradient(ellipse at 45% 55%,transparent 0 58px,rgba(111,237,255,.055) 59px 61px);transform:rotate(-12deg);z-index:-1}
.experience-visual::after{content:"";position:absolute;inset:auto -12% -15% -12%;height:42%;background:linear-gradient(180deg,rgba(44,223,247,.06),rgba(44,223,247,.16));clip-path:polygon(0 42%,12% 24%,27% 43%,44% 18%,61% 38%,78% 14%,100% 35%,100% 100%,0 100%);z-index:-1}
.experience-four-wrap{display:flex;align-items:flex-end;gap:1rem;position:relative;z-index:4;transform:translateY(-6px);padding-left:clamp(.8rem,2vw,1.5rem)}
.experience-four{display:block;font-family:"Playfair Display",Georgia,serif;font-size:clamp(12rem,22vw,20rem);font-weight:700;line-height:.8;letter-spacing:-.08em;padding:.08em .12em .04em .12em;color:transparent;background:linear-gradient(160deg,#ffffff 8%,#7df2ff 34%,#1bbce9 58%,#2e7bff 82%,#ffffff 100%);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 14px 30px rgba(0,0,0,.28)) drop-shadow(0 0 28px rgba(75,225,255,.22));animation:experienceFourFloat 5.5s ease-in-out infinite}
.experience-four::selection{color:var(--ink);-webkit-text-fill-color:var(--ink)}
.experience-years{padding-bottom:1.3rem;min-width:110px}
.experience-years strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:2.15rem;line-height:1;color:#fff}
.experience-years span{display:block;margin-top:.42rem;font-size:.67rem;text-transform:uppercase;letter-spacing:.18em;color:#8feeff;font-weight:800;line-height:1.45}
.experience-orbit{position:absolute;border:1px solid rgba(119,237,255,.24);border-radius:50%;z-index:1;pointer-events:none}
.experience-orbit-one{width:360px;height:360px;border-style:dashed;animation:orbitSpin 18s linear infinite}
.experience-orbit-two{width:470px;height:470px;animation:orbitSpin 30s linear infinite reverse}
.experience-bubbles span{position:absolute;border-radius:50%;background:#78efff;box-shadow:0 0 18px rgba(94,235,255,.7);animation:experienceBubble 5s ease-in-out infinite;z-index:3}
.experience-bubbles span:nth-child(1){width:10px;height:10px;left:22%;top:21%;animation-delay:-1s}
.experience-bubbles span:nth-child(2){width:6px;height:6px;right:21%;top:31%;animation-delay:-2.4s}
.experience-bubbles span:nth-child(3){width:14px;height:14px;right:17%;bottom:23%;animation-delay:-3.2s}
.experience-wave{position:absolute;left:0;right:0;bottom:42px;height:56px;z-index:2;opacity:.82}
.experience-wave span{position:absolute;left:-8%;width:116%;height:44px;border-radius:50%;border-top:3px solid rgba(104,239,255,.75);transform:rotate(-3deg);animation:experienceWave 6s ease-in-out infinite}
.experience-wave span:nth-child(2){top:13px;border-color:rgba(47,153,255,.7);animation-delay:-2s}
.experience-wave span:nth-child(3){top:26px;border-color:rgba(255,255,255,.38);animation-delay:-4s}
.experience-content{padding:clamp(2.2rem,5vw,5rem);height:100%;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,#fff,#fbfeff)}
.experience-content .display-title{font-size:clamp(2.6rem,4.6vw,4.4rem);max-width:830px}
.experience-lead{font-size:1.08rem;line-height:1.8;color:#60798e;margin:1.6rem 0 1.45rem;max-width:790px}
.purpose-card{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.25rem 1.3rem;border-radius:22px;background:linear-gradient(135deg,#061e37,#0a416d);color:white;box-shadow:0 16px 38px rgba(7,60,101,.16);position:relative;overflow:hidden}
.purpose-card::after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-60px;top:-70px;border:28px solid rgba(87,228,255,.08)}
.purpose-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:rgba(90,233,255,.12);border:1px solid rgba(111,239,255,.2);color:#72ecff;font-size:1.4rem;position:relative;z-index:2}
.purpose-kicker{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;color:#76efff;font-weight:900;margin:.05rem 0 .5rem;position:relative;z-index:2}
.purpose-card p{margin:0;color:#c7dbe9;line-height:1.72;font-size:.93rem;position:relative;z-index:2}
.experience-copy{color:#61798d;line-height:1.78;margin:1.45rem 0 0;max-width:820px}
.experience-actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;margin-top:1.7rem}
.experience-link{display:inline-flex;align-items:center;gap:.45rem;font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;font-weight:900;color:var(--royal)}
.experience-link i{transition:.25s}.experience-link:hover i{transform:translate(3px,-3px)}
@keyframes experienceFourFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}
@keyframes experienceBubble{0%,100%{transform:translateY(8px) scale(.85);opacity:.45}50%{transform:translateY(-16px) scale(1.12);opacity:1}}
@keyframes experienceWave{0%,100%{transform:translateX(-1.5%) rotate(-3deg)}50%{transform:translateX(1.5%) rotate(-1deg)}}

@media (max-width:991.98px){
  .experience-visual{min-height:500px;padding:1.8rem 1.25rem}
  .experience-four{font-size:clamp(13rem,42vw,19rem)}
  .experience-content{padding:2.4rem}
}
@media (max-width:575.98px){
  .experience-shell{border-radius:28px}
  .experience-visual{min-height:390px;padding:1.35rem 1rem}
  .experience-four-wrap{gap:.6rem;padding-left:.5rem}
  .experience-four{font-size:12rem;padding:.08em .08em .03em .08em}
  .experience-years{padding-bottom:.8rem;min-width:86px}
  .experience-years strong{font-size:1.7rem}
  .experience-years span{font-size:.58rem}
  .experience-orbit-one{width:285px;height:285px}.experience-orbit-two{width:350px;height:350px}
  .purpose-card{grid-template-columns:1fr}.purpose-icon{margin-bottom:.2rem}
  .experience-content{padding:2rem 1.35rem}
}

/* Home — experiência, direção visual inspirada em product storytelling premium */
.apple-experience{--exp-progress:0;position:relative;background:#f5f7f9;padding:clamp(5.5rem,9vw,9rem) 0;overflow:clip}
.apple-experience::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 14%,rgba(32,189,255,.09),transparent 28%),linear-gradient(180deg,#f8fafb 0%,#eef4f7 100%);pointer-events:none}
.apple-experience-shell{position:relative;border-radius:42px;background:#05080d;color:#f7fbff;overflow:clip;box-shadow:0 45px 100px rgba(5,24,40,.16);isolation:isolate}
.apple-exp-ambient{position:absolute;inset:-30%;z-index:-2;background:radial-gradient(circle at calc(24% + var(--exp-progress)*34%) 32%,rgba(41,200,255,.22),transparent 21%),radial-gradient(circle at 72% 72%,rgba(23,92,255,.19),transparent 24%);filter:blur(2px);transform:scale(calc(.96 + var(--exp-progress)*.08));transition:transform .08s linear}
.apple-experience-shell::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,rgba(255,255,255,.035),transparent 34%,rgba(63,210,255,.035) 64%,transparent);pointer-events:none}
.apple-exp-intro{padding:clamp(3.5rem,8vw,8rem) clamp(1.5rem,7vw,7rem) clamp(4rem,7vw,7rem);max-width:1320px}
.apple-exp-kicker{display:inline-flex;align-items:center;gap:.65rem;margin-bottom:1.35rem;color:#70ddff;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.apple-exp-kicker::before{content:"";width:28px;height:1px;background:currentColor;opacity:.7}
.apple-exp-intro h2{margin:0;max-width:1160px;font-family:"Playfair Display",Georgia,serif;font-size:clamp(3.35rem,7.8vw,7.7rem);line-height:.93;letter-spacing:-.055em;font-weight:600;color:#fff}
.apple-exp-intro h2 span{display:inline-block;color:#8c99a7}
.apple-exp-intro p{max-width:690px;margin:2rem 0 0;color:#aab7c2;font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.65}
.apple-exp-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0;padding:0 clamp(1.5rem,7vw,7rem) clamp(3rem,6vw,6rem)}
.apple-exp-stage-wrap{position:relative;padding-right:clamp(2rem,5vw,5rem)}
.apple-exp-stage{position:sticky;top:18vh;min-height:64vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09)}
.apple-exp-number-row{position:relative;z-index:3;display:flex;align-items:flex-end;gap:clamp(.85rem,2vw,1.5rem);padding:1.2rem 0 2rem}
.apple-exp-number{display:block;font-family:"Playfair Display",Georgia,serif;font-size:clamp(12rem,24vw,23rem);font-weight:600;line-height:.72;letter-spacing:-.085em;padding:.08em .08em .06em .08em;margin-left:-.08em;color:transparent;background:linear-gradient(155deg,#fff 5%,#c8f7ff 27%,#48d5ff 48%,#2f7dff 73%,#fff 98%);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 16px 36px rgba(0,0,0,.34));transform:translate3d(0,calc((.5 - var(--exp-progress))*18px),0) scale(calc(.96 + var(--exp-progress)*.04));will-change:transform}
.apple-exp-unit{padding-bottom:clamp(1rem,2vw,2.25rem)}
.apple-exp-unit strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.2rem,4vw,4rem);font-weight:600;line-height:.9;color:white}
.apple-exp-unit span{display:block;margin-top:.55rem;color:#72defd;font-size:.66rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.apple-exp-caption{position:relative;z-index:3;display:flex;gap:.9rem;flex-wrap:wrap;color:#8f9cab;font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700}
.apple-exp-caption span:not(:last-child)::after{content:"·";margin-left:.9rem;color:#3a758f}
.apple-exp-orb{position:absolute;width:390px;height:390px;border-radius:50%;left:8%;top:28%;background:radial-gradient(circle at 35% 30%,rgba(120,240,255,.5),rgba(0,113,255,.22) 32%,rgba(0,69,142,.03) 63%,transparent 72%);filter:blur(5px);opacity:calc(.55 + var(--exp-progress)*.3);transform:translate3d(calc(var(--exp-progress)*32px),calc(var(--exp-progress)*-20px),0) scale(calc(.92 + var(--exp-progress)*.12));z-index:1;pointer-events:none}
.apple-exp-ring{position:absolute;border:1px solid rgba(92,218,255,.14);border-radius:50%;pointer-events:none;z-index:1}
.apple-exp-ring-a{width:440px;height:440px;left:-5%;top:15%;transform:rotate(16deg) scaleY(.76)}
.apple-exp-ring-b{width:560px;height:560px;left:-14%;top:4%;border-color:rgba(255,255,255,.07);transform:rotate(-16deg) scaleY(.7)}
.apple-exp-story{position:relative}
.apple-exp-chapter{display:grid;grid-template-columns:70px 1fr;gap:1.1rem;min-height:63vh;align-content:center;padding:clamp(4rem,8vw,7.5rem) 0;border-top:1px solid rgba(255,255,255,.09);opacity:.44;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.apple-exp-chapter:last-child{border-bottom:1px solid rgba(255,255,255,.09)}
.apple-exp-chapter.is-active,.apple-exp-chapter:hover{opacity:1;transform:none}
.apple-exp-index{font-family:"Playfair Display",Georgia,serif;font-size:1.1rem;color:#4e8ca8;padding-top:.42rem}
.apple-exp-label{display:block;margin-bottom:1rem;color:#69ddff;font-size:.68rem;font-weight:850;letter-spacing:.17em;text-transform:uppercase}
.apple-exp-chapter h3{max-width:740px;margin:0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.3rem,4.2vw,4.65rem);line-height:1.02;letter-spacing:-.035em;font-weight:600;color:#fff}
.apple-exp-chapter p{max-width:720px;margin:1.5rem 0 0;color:#9eacb8;font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.78}
.apple-exp-chapter-featured h3{background:linear-gradient(92deg,#fff,#c9f7ff 55%,#6edcff);-webkit-background-clip:text;background-clip:text;color:transparent}
.apple-exp-actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;margin-top:2rem}
.apple-exp-actions .btn{font-weight:800;font-size:.8rem;letter-spacing:.02em;padding-top:.8rem;padding-bottom:.8rem}
.apple-exp-link{display:inline-flex;align-items:center;gap:.45rem;color:#79def9;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:.25s}
.apple-exp-link:hover{color:white;transform:translateY(-2px)}
.apple-exp-quote{margin:0 clamp(1.5rem,7vw,7rem) clamp(2.2rem,5vw,5rem);padding:clamp(2rem,4vw,3.5rem) 0 0;border-top:1px solid rgba(255,255,255,.09);display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.3rem;align-items:start}
.apple-exp-quote>span{font-family:"Playfair Display",Georgia,serif;font-size:clamp(4.5rem,8vw,7.5rem);line-height:.7;color:#45ccf6}
.apple-exp-quote p{max-width:980px;margin:0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.7rem,3.1vw,3.3rem);line-height:1.15;letter-spacing:-.025em;color:#dbe7ed}

@media (max-width:991.98px){
  .apple-experience{padding:4rem 0}
  .apple-experience-shell{border-radius:30px}
  .apple-exp-intro{padding:4rem 2rem 3.5rem}
  .apple-exp-layout{grid-template-columns:1fr;padding:0 2rem 3rem}
  .apple-exp-stage-wrap{padding:0}
  .apple-exp-stage{position:relative;top:auto;min-height:460px}
  .apple-exp-number{font-size:clamp(11rem,46vw,18rem)}
  .apple-exp-story{margin-top:1rem}
  .apple-exp-chapter{min-height:auto;padding:4.5rem 0;opacity:1;transform:none}
  .apple-exp-quote{margin:0 2rem 3rem}
}
@media (max-width:575.98px){
  .apple-experience{padding:2.5rem 0}
  .apple-experience>.container{padding-left:.75rem;padding-right:.75rem}
  .apple-experience-shell{border-radius:26px}
  .apple-exp-intro{padding:3rem 1.25rem 2.7rem}
  .apple-exp-intro h2{font-size:clamp(2.8rem,14vw,4.2rem);line-height:.98}
  .apple-exp-layout{padding:0 1.25rem 2rem}
  .apple-exp-stage{min-height:355px}
  .apple-exp-number-row{gap:.5rem}
  .apple-exp-number{font-size:clamp(10rem,48vw,12.5rem);padding-right:.03em}
  .apple-exp-unit{padding-bottom:.95rem}
  .apple-exp-unit strong{font-size:2rem}
  .apple-exp-unit span{font-size:.56rem;letter-spacing:.15em}
  .apple-exp-caption{font-size:.62rem;gap:.55rem}
  .apple-exp-caption span:not(:last-child)::after{margin-left:.55rem}
  .apple-exp-orb{width:300px;height:300px;left:-2%;top:21%}
  .apple-exp-ring-a{width:315px;height:315px;left:-10%;top:12%}
  .apple-exp-ring-b{width:390px;height:390px;left:-21%;top:5%}
  .apple-exp-chapter{grid-template-columns:42px 1fr;gap:.55rem;padding:3.5rem 0}
  .apple-exp-index{font-size:.9rem}
  .apple-exp-chapter h3{font-size:clamp(2rem,10vw,3rem)}
  .apple-exp-quote{margin:0 1.25rem 2.5rem;gap:.75rem}
  .apple-exp-quote>span{font-size:4.2rem}
  .apple-exp-quote p{font-size:clamp(1.45rem,7.3vw,2rem)}
}

/* Home — vídeo do portfólio no palco da assinatura */
.portfolio-video-stage{
  position:relative;
  min-height:540px;
  padding:0;
  isolation:isolate;
  background:
    radial-gradient(circle at 50% 35%,rgba(40,202,255,.18),transparent 38%),
    linear-gradient(145deg,#031526,#082b49 55%,#061d36);
}
.portfolio-video-stage::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 16% 22%,rgba(56,211,255,.13),transparent 24%),
    radial-gradient(circle at 85% 78%,rgba(24,100,255,.16),transparent 30%);
  pointer-events:none;
}
.portfolio-video-stage::after{
  content:"";
  position:absolute;
  inset:18px;
  z-index:3;
  border:1px solid rgba(137,231,255,.13);
  border-radius:28px;
  pointer-events:none;
}
.portfolio-story-video{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#071d33;
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
}
.portfolio-video-shine{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.06),transparent 28%,transparent 70%,rgba(77,213,255,.05));
  mix-blend-mode:screen;
}
.portfolio-video-stage.is-playing{box-shadow:0 30px 80px rgba(8,80,128,.18),0 0 0 1px rgba(71,219,255,.08)}

/* Cabeçalho mobile — navegação mais clara, explícita e fácil de tocar */
.mobile-menu-label{display:none}
@media (max-width:991.98px){
  .navbar.sea-nav{padding:.52rem 0;background:rgba(4,20,38,.94)}
  .sea-nav>.container{padding-left:.85rem;padding-right:.85rem}
  .brand-lockup{gap:.58rem;min-width:0;letter-spacing:.075em}
  .brand-lockup img{width:46px;height:46px;flex:0 0 46px}
  .brand-lockup span{display:block;white-space:nowrap;font-size:.82rem;line-height:1.08}
  .brand-lockup small{margin-top:.26rem;font-size:.5rem;letter-spacing:.14em;color:#86e7fb}

  .sea-nav .mobile-menu-toggle{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.52rem;
    min-width:94px;
    min-height:44px;
    padding:.55rem .72rem;
    border:1px solid rgba(124,230,255,.28);
    border-radius:999px;
    background:rgba(255,255,255,.055);
    color:#fff;
    box-shadow:none!important;
  }
  .mobile-menu-label{display:inline-block;font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:#dffaff}
  .sea-nav .navbar-toggler-icon{width:1.12rem;height:1.12rem;background-size:1.12rem 1.12rem;filter:invert(1)}
  .sea-nav .mobile-menu-toggle[aria-expanded="true"]{background:rgba(37,217,248,.13);border-color:rgba(91,231,255,.55)}

  .sea-nav .navbar-collapse{
    margin-top:.65rem;
    padding:1rem;
    border:1px solid rgba(119,226,255,.12);
    border-radius:22px;
    background:linear-gradient(160deg,rgba(8,35,60,.98),rgba(4,22,40,.99));
    box-shadow:0 24px 52px rgba(0,0,0,.24);
    max-height:calc(100svh - 86px);
    overflow-y:auto;
  }
  .sea-nav .navbar-nav{gap:.26rem!important}
  .sea-nav .nav-item{width:100%}
  .sea-nav .nav-link{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:50px;
    padding:.8rem .9rem!important;
    border-radius:14px;
    color:#d7e6f0!important;
    font-size:.92rem;
    font-weight:750;
    letter-spacing:.01em;
  }
  .sea-nav .nav-link::after{
    content:"›";
    position:static;
    width:auto;
    height:auto;
    background:none;
    transform:none!important;
    color:#65def8;
    font-size:1.35rem;
    line-height:1;
    opacity:.78;
  }
  .sea-nav .nav-link:hover{background:rgba(255,255,255,.055)}
  .sea-nav .nav-link.active{
    background:linear-gradient(90deg,rgba(37,217,248,.16),rgba(38,117,255,.08));
    color:#fff!important;
    box-shadow:inset 0 0 0 1px rgba(102,226,255,.13);
  }
  .sea-nav .navbar-collapse>.btn-sea{
    width:100%;
    min-height:50px;
    justify-content:center;
    margin-left:0!important;
    margin-top:.75rem!important;
    font-size:.78rem;
  }
}
@media (max-width:575.98px){
  .brand-lockup img{width:41px;height:41px;flex-basis:41px}
  .brand-lockup span{font-size:.72rem;letter-spacing:.055em}
  .brand-lockup small{font-size:.45rem;letter-spacing:.1em}
  .sea-nav .mobile-menu-toggle{min-width:84px;min-height:41px;padding:.48rem .62rem}
  .mobile-menu-label{font-size:.62rem}
  .portfolio-video-stage{min-height:390px;border-radius:28px}
  .portfolio-video-stage::after{inset:12px;border-radius:21px}
}
@media (max-width:380px){
  .brand-lockup small{display:none}
  .brand-lockup span{font-size:.69rem}
  .sea-nav .mobile-menu-toggle{min-width:76px}
  .mobile-menu-label{font-size:.58rem}
}

/* Home — experiência em versão mais leve e minimalista */
.lite-experience{
  position:relative;
  padding:clamp(4.5rem,8vw,7.5rem) 0;
  overflow:hidden;
  background:linear-gradient(180deg,#f7fbfd 0%,#eef7fb 100%);
}
.lite-experience::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-210px;
  top:-220px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(43,203,242,.12),transparent 68%);
  pointer-events:none;
}
.lite-experience-card{
  position:relative;
  overflow:hidden;
  border:1px solid #d9eaf1;
  border-radius:38px;
  background:rgba(255,255,255,.9);
  box-shadow:0 24px 70px rgba(16,73,107,.08);
  backdrop-filter:blur(12px);
}
.lite-experience-number{
  position:relative;
  min-height:470px;
  height:100%;
  padding:clamp(2rem,4vw,3.25rem);
  display:flex;
  flex-direction:column;
  justify-content:center;
  overflow:hidden;
  background:linear-gradient(145deg,#061d33 0%,#0b4168 100%);
  color:#fff;
}
.lite-experience-halo{
  position:absolute;
  width:310px;
  height:310px;
  left:50%;
  top:48%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  border:1px solid rgba(116,231,255,.16);
  box-shadow:0 0 0 48px rgba(111,229,255,.035),0 0 0 98px rgba(111,229,255,.02);
  pointer-events:none;
}
.lite-experience-number-row{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-end;
  gap:.8rem;
}
.lite-experience-five{
  display:block;
  padding:.05em .07em .03em 0;
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(10.5rem,18vw,15.5rem);
  font-weight:600;
  line-height:.74;
  letter-spacing:-.075em;
  color:transparent;
  background:linear-gradient(150deg,#fff 8%,#8ff1ff 34%,#29c4f0 58%,#3278ff 84%,#fff 100%);
  -webkit-background-clip:text;
  background-clip:text;
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.18));
}
.lite-experience-unit{padding-bottom:1rem}
.lite-experience-unit strong{
  display:block;
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(2rem,3vw,2.8rem);
  font-weight:600;
  line-height:.9;
}
.lite-experience-unit span{
  display:block;
  margin-top:.5rem;
  color:#83e7ff;
  font-size:.62rem;
  font-weight:850;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.lite-experience-number>p{
  position:relative;
  z-index:2;
  max-width:320px;
  margin:1.8rem 0 0;
  color:#b8d1df;
  font-size:.98rem;
  line-height:1.65;
}
.lite-experience-content{
  padding:clamp(2.5rem,5.5vw,5.25rem);
}
.lite-experience-content .display-title{
  max-width:850px;
  margin-top:.7rem;
  font-size:clamp(2.6rem,4.7vw,4.7rem);
  line-height:.98;
}
.lite-experience-lead,
.lite-experience-copy{
  max-width:820px;
  color:#657f91;
  font-size:1.04rem;
  line-height:1.78;
}
.lite-experience-lead{margin:1.7rem 0 1.5rem}
.lite-experience-copy{margin:1.45rem 0 0}
.lite-purpose-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:1rem;
  align-items:start;
  max-width:850px;
  padding:1.35rem 1.45rem;
  border:1px solid #d9edf4;
  border-radius:22px;
  background:#f7fcfe;
}
.lite-purpose-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:15px;
  background:#ddf7ff;
  color:#087fc6;
  font-size:1.25rem;
}
.lite-purpose-card span{
  display:block;
  margin-bottom:.4rem;
  color:#086fb0;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.lite-purpose-card p{
  margin:0;
  color:#526f82;
  font-size:.96rem;
  line-height:1.68;
}
.lite-experience-actions{
  display:flex;
  align-items:center;
  gap:1.15rem;
  flex-wrap:wrap;
  margin-top:1.8rem;
}
.lite-experience-link{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  color:var(--royal);
  font-size:.75rem;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.lite-experience-link i{transition:transform .25s ease}
.lite-experience-link:hover i{transform:translate(3px,-3px)}

/* O vídeo da assinatura ocupa um quadro 4:4 (1:1). */
.portfolio-video-stage{
  aspect-ratio:1 / 1;
  min-height:0;
}
.portfolio-story-video{
  object-fit:cover;
  object-position:center;
}

@media (max-width:991.98px){
  .lite-experience{padding:4rem 0}
  .lite-experience-card{border-radius:30px}
  .lite-experience-number{min-height:390px}
  .lite-experience-number-row{justify-content:center}
  .lite-experience-number>p{text-align:center;margin-left:auto;margin-right:auto}
  .lite-experience-content{padding:3rem 2rem}
}
@media (max-width:575.98px){
  .lite-experience{padding:2.75rem 0}
  .lite-experience>.container{padding-left:.75rem;padding-right:.75rem}
  .lite-experience-card{border-radius:25px}
  .lite-experience-number{min-height:330px;padding:2rem 1.35rem}
  .lite-experience-five{font-size:10rem}
  .lite-experience-unit{padding-bottom:.7rem}
  .lite-experience-unit strong{font-size:1.8rem}
  .lite-experience-unit span{font-size:.54rem;letter-spacing:.14em}
  .lite-experience-halo{width:250px;height:250px}
  .lite-experience-content{padding:2.35rem 1.35rem}
  .lite-experience-content .display-title{font-size:clamp(2.35rem,11vw,3.25rem)}
  .lite-purpose-card{grid-template-columns:1fr;padding:1.2rem}
  .lite-purpose-icon{width:44px;height:44px}
  .portfolio-video-stage{min-height:0!important;aspect-ratio:1 / 1}
}

/* Ajustes finais — experiência mais leve e vídeo em tamanho nativo */
.lite-experience{
  padding:clamp(4.5rem,7vw,6.5rem) 0;
  background:linear-gradient(180deg,#f8fbfd 0%,#f1f8fb 100%);
}
.lite-experience::before{
  width:420px;
  height:420px;
  right:-180px;
  top:-190px;
  opacity:.7;
}
.lite-experience-number{
  min-height:430px;
  padding:clamp(2rem,3.4vw,2.8rem);
  border-radius:30px;
  background:linear-gradient(150deg,#071d32 0%,#0b3c60 100%);
  box-shadow:0 20px 55px rgba(10,60,94,.10);
}
.lite-experience-halo{
  width:270px;
  height:270px;
  top:47%;
  box-shadow:0 0 0 36px rgba(111,229,255,.03),0 0 0 76px rgba(111,229,255,.018);
}
.lite-experience-number-row{gap:.65rem}
.lite-experience-five{
  font-size:clamp(8.75rem,12.5vw,11.5rem);
  line-height:.78;
  letter-spacing:-.065em;
}
.lite-experience-unit{padding-bottom:.72rem}
.lite-experience-unit strong{font-size:clamp(1.8rem,2.4vw,2.35rem)}
.lite-experience-unit span{font-size:.58rem;letter-spacing:.16em}
.lite-experience-number>p{
  max-width:285px;
  margin-top:1.45rem;
  font-size:.94rem;
  line-height:1.62;
}
.lite-experience-content{
  height:100%;
  padding:clamp(2.4rem,4vw,3.6rem);
  border:1px solid #dbeaf1;
  border-radius:30px;
  background:rgba(255,255,255,.92);
  box-shadow:0 18px 55px rgba(15,72,104,.055);
}
.lite-experience-content .display-title{
  max-width:760px;
  margin-top:.65rem;
  font-size:clamp(2.55rem,3.55vw,3.75rem);
  line-height:1.01;
  letter-spacing:-.035em;
}
.lite-experience-lead,
.lite-experience-copy{
  max-width:760px;
  font-size:1rem;
  line-height:1.72;
}
.lite-experience-lead{margin:1.35rem 0 1.25rem}
.lite-experience-copy{margin:1.25rem 0 0}
.lite-purpose-card{
  max-width:760px;
  gap:.9rem;
  padding:1.15rem 1.2rem;
  border-radius:18px;
  border-color:#dcecf3;
  background:#f8fcfe;
}
.lite-purpose-icon{
  width:44px;
  height:44px;
  border-radius:13px;
  font-size:1.12rem;
}
.lite-purpose-card span{font-size:.64rem;letter-spacing:.1em}
.lite-purpose-card p{font-size:.92rem;line-height:1.62}
.lite-experience-actions{margin-top:1.5rem}

/* O arquivo do vídeo agora é quadrado em 480x480 e é exibido sem ampliação excessiva. */
.portfolio-video-column{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
.portfolio-video-stage{
  width:min(100%,480px);
  max-width:480px;
  aspect-ratio:1 / 1;
  min-height:0!important;
  margin-left:auto;
  border-radius:32px;
  box-shadow:0 24px 65px rgba(8,61,99,.12);
}
.portfolio-video-stage::after{
  inset:12px;
  border-radius:22px;
}
.portfolio-story-video{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

@media (max-width:991.98px){
  .lite-experience{padding:3.75rem 0}
  .lite-experience-number{min-height:320px;border-radius:26px}
  .lite-experience-number-row{justify-content:center}
  .lite-experience-number>p{text-align:center;margin-left:auto;margin-right:auto}
  .lite-experience-content{padding:2.6rem 2rem;border-radius:26px}
  .lite-experience-content .display-title{font-size:clamp(2.55rem,7vw,3.6rem)}
  .portfolio-video-column{justify-content:center}
  .portfolio-video-stage{width:min(100%,460px);margin-inline:auto}
}

@media (max-width:575.98px){
  .lite-experience{padding:2.6rem 0}
  .lite-experience>.container{padding-left:.9rem;padding-right:.9rem}
  .lite-experience-number{min-height:285px;padding:1.8rem 1.35rem;border-radius:22px}
  .lite-experience-five{font-size:8.7rem}
  .lite-experience-unit{padding-bottom:.55rem}
  .lite-experience-unit strong{font-size:1.65rem}
  .lite-experience-unit span{font-size:.5rem;letter-spacing:.12em}
  .lite-experience-halo{width:220px;height:220px}
  .lite-experience-number>p{margin-top:1rem;font-size:.88rem}
  .lite-experience-content{padding:2rem 1.25rem;border-radius:22px}
  .lite-experience-content .display-title{font-size:clamp(2.15rem,10vw,2.85rem);line-height:1.03}
  .lite-experience-lead,.lite-experience-copy{font-size:.96rem}
  .lite-purpose-card{grid-template-columns:auto 1fr;padding:1rem;gap:.75rem;border-radius:16px}
  .lite-purpose-icon{width:40px;height:40px}
  .lite-purpose-card p{font-size:.9rem}
  .portfolio-video-stage{width:min(88vw,420px);border-radius:26px}
  .portfolio-video-stage::after{inset:9px;border-radius:18px}
}


/* Correção final: numeral de experiência sem recorte */
.lite-experience-number-row{
  overflow:visible;
  padding:.35rem .35rem .2rem .55rem;
}
.lite-experience-five{
  display:inline-block;
  font-size:clamp(8.2rem,11.5vw,10.8rem);
  line-height:.9;
  letter-spacing:-.045em;
  padding:.08em .11em .08em .12em;
  overflow:visible;
}
@media (max-width:575.98px){
  .lite-experience-number-row{padding:.25rem .2rem .15rem .35rem}
  .lite-experience-five{font-size:8rem;line-height:.9;padding:.08em .1em .08em .12em}
}


.pilates-page-hero{min-height:78vh;padding:135px 0 80px;display:flex;align-items:center}
.pilates-page-hero::before{background:radial-gradient(circle at 88% 18%,rgba(37,217,248,.18),transparent 22%),linear-gradient(90deg,rgba(2,17,33,.10) 0%,rgba(2,17,33,.35) 36%,rgba(2,17,33,.72) 58%,rgba(2,17,33,.94) 100%)}
.pilates-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);align-items:center;gap:2.5rem}
.pilates-hero-copy{position:relative;z-index:3;max-width:760px}
.pilates-hero-media{position:relative;display:flex;justify-content:flex-end;align-items:center;min-height:520px}
.pilates-hero-image-wrap{position:relative;width:min(100%,650px);border-radius:34px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.28);background:rgba(255,255,255,.03)}
.pilates-hero-image-wrap::before{content:"";position:absolute;inset:0;background:linear-gradient(270deg,rgba(6,53,94,.02) 0%,rgba(6,53,94,.04) 38%,rgba(3,21,40,.48) 68%,rgba(3,21,40,.92) 100%);z-index:2;pointer-events:none}
.pilates-hero-image-wrap::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 18%,transparent 82%,rgba(0,0,0,.06));z-index:2;pointer-events:none}
.pilates-hero-image-wrap img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/5;object-position:center center;filter:saturate(1.02) brightness(1.02)}
.pilates-page-hero h1{max-width:760px}
.pilates-page-hero .subtitle{max-width:620px}
@media (max-width: 1199px){
  .pilates-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.82fr);gap:2rem}
  .pilates-hero-media{min-height:460px}
}
@media (max-width: 991px){
  .pilates-page-hero{min-height:auto;padding:125px 0 64px}
  .pilates-hero-grid{grid-template-columns:1fr;gap:2rem}
  .pilates-hero-copy{max-width:none}
  .pilates-hero-media{justify-content:center;min-height:auto}
  .pilates-hero-image-wrap{width:min(100%,540px)}
  .pilates-hero-image-wrap::before{background:linear-gradient(180deg,rgba(3,21,40,.08),rgba(3,21,40,.08)),linear-gradient(180deg,rgba(3,21,40,.04),transparent 25%,transparent 75%,rgba(3,21,40,.14))}
}
@media (max-width: 575px){
  .pilates-page-hero{padding:115px 0 54px}
  .pilates-hero-image-wrap{border-radius:24px}
}


.page-hero-image-banner{position:relative;width:100%;margin-top:0;background:#041a31;overflow:hidden}
.page-hero-image-banner img{display:block;width:100%;height:auto;object-fit:cover;object-position:center center}
@media (max-width: 991px){
  .page-hero-image-banner{margin-top:0}
}
@media (max-width: 575px){
  .page-hero-image-banner{margin-top:0}
}


/* Pilates — panorama em três movimentos + cards flutuantes */
.pilates-benefits-showcase{
  position:relative;
  padding:100px 0 96px;
  background:linear-gradient(180deg,#f7fdff 0%,#eefaff 54%,#e8f8ff 100%);
  overflow:hidden;
}
.pilates-benefits-showcase::before{
  content:"";position:absolute;width:520px;height:520px;border-radius:50%;
  right:-210px;top:80px;background:radial-gradient(circle,rgba(37,217,248,.14),transparent 68%);pointer-events:none;
}
.pilates-benefits-heading{position:relative;z-index:2;margin-bottom:48px}
.pilates-benefits-panorama{
  position:relative;width:100%;overflow:hidden;background:#082b4c;
  box-shadow:0 30px 90px rgba(5,50,85,.16);
}
.pilates-benefits-panorama img{
  width:100%;height:clamp(420px,50vw,760px);object-fit:cover;object-position:center;display:block;
}
.pilates-benefits-panorama-shade{
  position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(2,19,35,.02) 54%,rgba(2,23,42,.44) 100%);
}
.pilates-benefits-float-wrap{position:relative;z-index:4;margin-top:-78px}
.pilates-benefits-flex{
  display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:center;gap:22px;
}
.pilates-float-card{
  --card-lift:0px;
  position:relative;isolation:isolate;overflow:hidden;
  flex:1 1 300px;min-width:0;max-width:420px;
  padding:26px 26px 24px;border-radius:28px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(173,224,240,.76);
  box-shadow:0 24px 70px rgba(6,54,88,.14);
  backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%);
  transition:transform .32s cubic-bezier(.2,.75,.2,1),box-shadow .32s ease,border-color .32s ease;
  animation:pilatesCardFloat 6s ease-in-out infinite;
}
.pilates-float-card::before{
  content:"";position:absolute;z-index:-1;width:220px;height:220px;border-radius:50%;right:-110px;top:-115px;
  background:radial-gradient(circle,rgba(37,217,248,.2),rgba(37,217,248,0) 67%);
}
.pilates-float-card::after{
  content:"";position:absolute;left:22px;right:22px;bottom:0;height:2px;border-radius:99px;
  background:linear-gradient(90deg,transparent,var(--cyan),var(--blue),transparent);opacity:.62;
}
.pilates-float-card:hover{
  transform:translateY(calc(var(--card-lift) - 8px));
  box-shadow:0 34px 90px rgba(6,54,88,.2);border-color:rgba(73,211,239,.8);
}
.pilates-float-card-strength{--card-lift:28px;max-width:465px;animation-delay:-2s}
.pilates-float-card-awareness{--card-lift:-12px;animation-delay:-4s}
.pilates-float-card-mobility{animation-delay:-.5s}
.pilates-float-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.pilates-float-index{font-family:"Playfair Display",Georgia,serif;font-size:2.1rem;line-height:1;color:#c8eef7;font-weight:700}
.pilates-float-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#dffbff,#ccefff);color:var(--royal);font-size:1.25rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.pilates-float-kicker{display:block;margin-bottom:.55rem;font-size:.63rem;letter-spacing:.15em;text-transform:uppercase;color:var(--royal);font-weight:900}
.pilates-float-card h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.75rem,2.4vw,2.3rem);line-height:1;margin:0 0 .8rem;letter-spacing:-.03em}
.pilates-float-card p{margin:0;color:#61798d;font-size:.94rem;line-height:1.7}
.pilates-float-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}
.pilates-float-tags span{padding:.38rem .65rem;border-radius:99px;background:#effaff;border:1px solid #d8eff7;color:#2b6f91;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
@keyframes pilatesCardFloat{0%,100%{translate:0 var(--card-lift)}50%{translate:0 calc(var(--card-lift) - 7px)}}
@media (prefers-reduced-motion:reduce){.pilates-float-card{animation:none}}
@media (max-width:991.98px){
  .pilates-benefits-showcase{padding:78px 0 76px}
  .pilates-benefits-heading{margin-bottom:34px}
  .pilates-benefits-panorama img{height:clamp(390px,68vw,600px)}
  .pilates-benefits-float-wrap{margin-top:-48px}
  .pilates-benefits-flex{gap:16px}
  .pilates-float-card,.pilates-float-card-strength,.pilates-float-card-awareness{--card-lift:0px;max-width:none;flex:1 1 calc(50% - 16px)}
}
@media (max-width:575.98px){
  .pilates-benefits-showcase{padding:58px 0 62px}
  .pilates-benefits-heading{margin-bottom:26px}
  .pilates-benefits-panorama img{height:360px;object-position:center}
  .pilates-benefits-float-wrap{margin-top:-28px;padding-left:14px;padding-right:14px}
  .pilates-benefits-flex{display:flex;flex-direction:column;gap:13px}
  .pilates-float-card,.pilates-float-card-strength,.pilates-float-card-awareness{width:100%;flex:1 1 auto;padding:22px;border-radius:22px;animation:none}
}


/* Pilates — cards flutuantes simplificados */
.pilates-float-card{padding:30px 28px 28px;min-height:205px;display:flex;flex-direction:column;justify-content:center}
.pilates-float-card h3{font-size:clamp(1.9rem,2.5vw,2.45rem);margin-bottom:1rem}
.pilates-float-card p{font-size:.98rem;line-height:1.75;max-width:33rem}
.pilates-float-top,.pilates-float-index,.pilates-float-icon,.pilates-float-kicker,.pilates-float-tags{display:none!important}

/* Pilates — processo editorial inspirado em páginas de produto premium */
.pilates-process-apple{position:relative;overflow:hidden;background:#f7fbfd;padding:clamp(90px,10vw,150px) 0;color:#06192d}
.pilates-process-apple::before{content:"";position:absolute;width:760px;height:760px;border-radius:50%;right:-330px;top:-180px;background:radial-gradient(circle,rgba(44,210,238,.12),transparent 68%);pointer-events:none}
.pilates-process-intro{max-width:1080px;margin:0 auto clamp(72px,9vw,128px);text-align:center;position:relative;z-index:2}
.pilates-process-intro h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(3.4rem,7vw,7.3rem);line-height:.92;letter-spacing:-.06em;margin:1rem 0 1.8rem;color:#07192c}
.pilates-process-intro p{max-width:850px;margin:0 auto;color:#6a8193;font-size:clamp(1.05rem,1.45vw,1.3rem);line-height:1.8}
.pilates-process-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:clamp(48px,8vw,120px);align-items:start;position:relative;z-index:2}
.pilates-process-sticky{position:sticky;top:135px;min-height:560px;border-radius:42px;padding:clamp(34px,4vw,56px);background:linear-gradient(155deg,#03172b,#07395f 72%,#07598b);color:white;overflow:hidden;box-shadow:0 35px 90px rgba(3,36,62,.16)}
.pilates-process-sticky::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-170px;bottom:-170px;border:1px solid rgba(106,231,250,.26);box-shadow:0 0 0 38px rgba(77,210,242,.035),0 0 0 80px rgba(77,210,242,.025)}
.process-sticky-label{display:inline-block;font-size:.68rem;letter-spacing:.17em;text-transform:uppercase;font-weight:900;color:#77eaff;margin-bottom:2rem}
.pilates-process-sticky h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.7rem,4.4vw,4.9rem);line-height:.94;letter-spacing:-.05em;margin:0 0 1.7rem}
.pilates-process-sticky p{max-width:480px;color:#c1d6e5;font-size:1rem;line-height:1.8;margin:0}
.process-pulse{position:absolute;right:34px;bottom:34px;width:94px;height:94px}
.process-pulse span{position:absolute;inset:0;border:1px solid rgba(117,235,255,.36);border-radius:50%;animation:processPulse 4s ease-out infinite}
.process-pulse span:nth-child(2){animation-delay:1.2s}.process-pulse span:nth-child(3){animation-delay:2.4s}
@keyframes processPulse{0%{transform:scale(.42);opacity:0}24%{opacity:.75}100%{transform:scale(1.32);opacity:0}}
.pilates-process-story{position:relative}
.pilates-process-story::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:1px;background:linear-gradient(180deg,transparent,#cfe8f1 8%,#bce0ec 92%,transparent)}
.process-chapter{position:relative;padding:0 0 clamp(72px,9vw,118px) clamp(34px,4.2vw,64px);max-width:800px}
.process-chapter:last-child{padding-bottom:20px}
.process-chapter::before{content:"";position:absolute;left:-5px;top:8px;width:11px;height:11px;border-radius:50%;background:#38d7ee;box-shadow:0 0 0 8px rgba(56,215,238,.12),0 0 22px rgba(56,215,238,.33)}
.process-chapter-label{display:block;margin-bottom:1.25rem;font-size:.67rem;letter-spacing:.17em;text-transform:uppercase;color:#1378b0;font-weight:900}
.process-chapter h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.4rem,4.7vw,4.7rem);line-height:.98;letter-spacing:-.05em;margin:0 0 1.2rem;color:#07192c}
.process-chapter p{font-size:clamp(1rem,1.3vw,1.14rem);line-height:1.85;color:#647b8e;margin:0;max-width:710px}
.pilates-process-finale{margin-top:clamp(86px,10vw,150px);padding:clamp(44px,6vw,78px);border-radius:44px;background:linear-gradient(145deg,#ffffff,#edfaff);border:1px solid #d4ebf3;box-shadow:0 30px 80px rgba(5,54,89,.08);text-align:center;position:relative;overflow:hidden}
.pilates-process-finale::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;left:-220px;top:-250px;background:radial-gradient(circle,rgba(37,217,248,.16),transparent 70%)}
.process-finale-kicker{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:900;color:#147ab1;margin:0 0 1.4rem}
.pilates-process-finale h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.5rem,5.3vw,5.3rem);line-height:.98;letter-spacing:-.05em;max-width:1050px;margin:0 auto 2.2rem;color:#07192c}
@media (max-width:991.98px){
  .pilates-process-layout{grid-template-columns:1fr;gap:54px}
  .pilates-process-sticky{position:relative;top:auto;min-height:auto}
  .pilates-process-story{padding-left:4px}
}
@media (max-width:575.98px){
  .pilates-process-apple{padding:72px 0}
  .pilates-process-intro{margin-bottom:58px;text-align:left}
  .pilates-process-intro h2{font-size:clamp(3rem,15vw,4.7rem)}
  .pilates-process-sticky{border-radius:28px;padding:30px 24px}
  .process-pulse{width:70px;height:70px;right:20px;bottom:20px}
  .process-chapter{padding-left:30px;padding-bottom:66px}
  .pilates-process-finale{border-radius:30px;padding:38px 24px}
}
@media (prefers-reduced-motion:reduce){.process-pulse span{animation:none}}

/* Rodapé areia do mar — aplicado em todas as páginas */
footer{position:relative;overflow:hidden;background:
  radial-gradient(circle at 12% 18%,rgba(255,255,255,.46) 0 1px,transparent 1.6px),
  radial-gradient(circle at 80% 62%,rgba(124,97,58,.10) 0 1px,transparent 1.7px),
  linear-gradient(180deg,#f1e5cf 0%,#e4cfaa 52%,#cfb486 100%);color:#4e5c64;padding:90px 0 30px;border-top:0}
footer::before{content:"";position:absolute;left:-5%;right:-5%;top:-52px;height:105px;background:#f1e5cf;border-radius:50% 45% 0 0/70% 70% 0 0;transform:rotate(-1deg);box-shadow:0 -18px 45px rgba(6,39,62,.05)}
footer::after{content:"";position:absolute;left:-8%;right:-8%;bottom:-110px;height:210px;border-radius:50%;background:rgba(173,139,88,.14);transform:rotate(2deg);pointer-events:none}
footer .container{position:relative;z-index:2}
footer .footer-logo{width:120px;filter:drop-shadow(0 12px 22px rgba(85,63,34,.18))}
footer h6{color:#283b45;font-weight:900;font-size:.74rem;text-transform:uppercase;letter-spacing:.14em}
footer a{color:#526875;display:inline-block;margin:.28rem 0;transition:.2s}
footer a:hover{color:#0f76a8}
footer strong{color:#2f4a58}
.footer-bottom{border-top:1px solid rgba(87,67,39,.17);margin-top:2.5rem;padding-top:1.4rem;font-size:.76rem;color:#68757a}

/* Rodapé fotográfico — areia e mar mais realistas */
footer{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#8a6b4a url('../images/footer-beach-realistic.jpg') center top/cover no-repeat;
  color:#f7f5f1;
  padding:104px 0 34px;
  border-top:0;
  box-shadow:inset 0 18px 38px rgba(5,22,35,.10);
}
footer::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(180deg,rgba(3,24,40,.18) 0%,rgba(14,37,48,.38) 34%,rgba(39,31,22,.62) 100%),
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.10),transparent 32%);
  pointer-events:none;
}
footer::after{
  content:"";
  position:absolute;
  left:-4%;right:-4%;top:-24px;
  height:70px;
  z-index:0;
  background:
    radial-gradient(70px 24px at 5% 52%,rgba(255,255,255,.78) 0 36%,transparent 38%),
    radial-gradient(95px 30px at 18% 58%,rgba(255,255,255,.66) 0 36%,transparent 38%),
    radial-gradient(85px 27px at 33% 48%,rgba(255,255,255,.72) 0 36%,transparent 38%),
    radial-gradient(105px 33px at 50% 56%,rgba(255,255,255,.60) 0 36%,transparent 38%),
    radial-gradient(92px 29px at 67% 50%,rgba(255,255,255,.68) 0 36%,transparent 38%),
    radial-gradient(104px 32px at 83% 58%,rgba(255,255,255,.58) 0 36%,transparent 38%),
    radial-gradient(78px 25px at 96% 48%,rgba(255,255,255,.72) 0 36%,transparent 38%);
  opacity:.58;
  filter:blur(.35px);
  pointer-events:none;
}
footer .container{position:relative;z-index:2}
footer .row:first-child{
  padding:26px 28px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:28px;
  background:linear-gradient(135deg,rgba(8,35,50,.40),rgba(35,31,26,.24));
  box-shadow:0 22px 52px rgba(8,23,31,.18);
  backdrop-filter:blur(11px) saturate(120%);
  -webkit-backdrop-filter:blur(11px) saturate(120%);
}
footer .footer-logo{
  width:126px;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.28));
}
footer p{color:rgba(255,255,255,.86)}
footer h6{color:#fff;font-weight:900;font-size:.74rem;text-transform:uppercase;letter-spacing:.14em;text-shadow:0 1px 10px rgba(0,0,0,.18)}
footer a{color:rgba(255,255,255,.82);display:inline-block;margin:.28rem 0;transition:.2s}
footer a:hover{color:#8eefff;transform:translateX(2px)}
footer strong{color:#fff}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.22);
  margin-top:2rem;
  padding-top:1.35rem;
  font-size:.76rem;
  color:rgba(255,255,255,.74);
  text-shadow:0 1px 10px rgba(0,0,0,.18);
}
@media (max-width:991.98px){
  footer{padding:88px 0 28px;background-position:58% top}
  footer .row:first-child{padding:24px 22px;border-radius:24px}
}
@media (max-width:575.98px){
  footer{padding:76px 0 24px;background-position:64% top}
  footer .row:first-child{padding:22px 18px;border-radius:22px;background:linear-gradient(180deg,rgba(7,34,49,.52),rgba(35,31,26,.36))}
  footer .footer-logo{width:110px}
}

/* =========================================================
   MOBILE FIRST POLISH — 2026
   Ajustes finais para leitura, enquadramento e toque em telas pequenas
   ========================================================= */
html,body{max-width:100%;overflow-x:clip}
img,video{max-width:100%}
h1,h2,h3{overflow-wrap:break-word}
.whatsapp-contact{display:inline-flex;align-items:center;gap:.35rem;color:inherit;text-decoration:none}
.whatsapp-contact:hover{color:#8eefff}
.pilates-mobile-hero-copy{display:none}

@media (max-width:767.98px){
  :root{--radius-xl:24px;--radius-lg:20px;--radius-md:16px}
  .container{--bs-gutter-x:1.4rem}
  .section-pad{padding:64px 0}
  .display-title{font-size:clamp(2.15rem,10.5vw,3.2rem);line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
  .lead-muted{font-size:.96rem;line-height:1.72}
  .eyebrow{font-size:.63rem;letter-spacing:.15em;margin-bottom:.55rem}
  .kicker{font-size:.64rem;letter-spacing:.17em;gap:.48rem}
  .kicker::before{width:26px}
  .btn-sea,.btn-ghost,.btn-light-sea{min-height:46px;padding:.78rem 1rem;font-size:.74rem;justify-content:center}

  /* Cabeçalho e navegação */
  .navbar.sea-nav{padding:.42rem 0;padding-top:max(.42rem,env(safe-area-inset-top));}
  .sea-nav>.container{padding-left:.7rem;padding-right:.7rem;gap:.35rem}
  .navbar-brand{margin-right:.25rem}
  .brand-lockup{gap:.5rem;max-width:calc(100% - 92px)}
  .brand-lockup img{width:40px;height:40px;flex:0 0 40px}
  .brand-lockup span{display:block!important;font-size:.69rem;line-height:1.05;letter-spacing:.045em;overflow:hidden;text-overflow:ellipsis}
  .brand-lockup small{font-size:.43rem;letter-spacing:.085em;margin-top:.2rem}
  .sea-nav .mobile-menu-toggle{min-width:78px;min-height:40px;padding:.45rem .58rem;gap:.4rem}
  .mobile-menu-label{font-size:.58rem}
  .sea-nav .navbar-toggler-icon{width:1rem;height:1rem;background-size:1rem}
  .sea-nav .navbar-collapse{margin-top:.5rem;padding:.75rem;border-radius:18px;max-height:calc(100dvh - 78px);overscroll-behavior:contain}
  .sea-nav .nav-link{min-height:46px;padding:.68rem .78rem!important;font-size:.86rem;border-radius:12px}
  .sea-nav .navbar-collapse>.btn-sea{min-height:46px;margin-top:.55rem!important}

  /* Home */
  .hero-home{min-height:auto;padding:108px 0 54px;align-items:flex-start}
  .hero-home .row{--bs-gutter-y:1.4rem}
  .hero-title{font-size:clamp(2.8rem,13vw,4.05rem);line-height:.95;letter-spacing:-.045em;margin:.8rem 0 1rem;text-wrap:balance}
  .hero-copy{font-size:.96rem;line-height:1.7}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:.7rem;margin-top:1.5rem}
  .hero-actions .btn{width:100%}
  .hero-logo-orbit{min-height:270px;margin-top:.2rem}
  .hero-logo-orbit::before{width:245px;height:245px}
  .hero-logo-orbit::after{display:none}
  .hero-logo{width:min(270px,74vw)}
  .orbit-dot{width:9px;height:9px;top:12%;right:20%}

  .lite-experience{padding:2.8rem 0}
  .lite-experience>.container{padding-left:.75rem;padding-right:.75rem}
  .lite-experience-number{min-height:250px;padding:1.45rem 1.1rem;border-radius:22px}
  .lite-experience-number-row{justify-content:center;align-items:flex-end;gap:.35rem;padding:.15rem .1rem .05rem}
  .lite-experience-five{font-size:clamp(6.5rem,34vw,8rem);line-height:.92;letter-spacing:-.035em;padding:.08em .08em .06em .08em}
  .lite-experience-unit{padding-bottom:.55rem}
  .lite-experience-unit strong{font-size:1.55rem}
  .lite-experience-unit span{font-size:.48rem;letter-spacing:.1em}
  .lite-experience-halo{width:205px;height:205px}
  .lite-experience-number>p{max-width:250px;margin:1rem auto 0;text-align:center;font-size:.86rem;line-height:1.55}
  .lite-experience-content{padding:1.7rem 1.1rem;border-radius:22px}
  .lite-experience-content .display-title{font-size:clamp(2.05rem,10vw,2.75rem);line-height:1.04}
  .lite-experience-lead,.lite-experience-copy{font-size:.93rem;line-height:1.67}
  .lite-purpose-card{grid-template-columns:1fr;padding:1rem;border-radius:16px;gap:.6rem}
  .lite-purpose-icon{width:39px;height:39px}
  .lite-purpose-card p{font-size:.88rem}
  .lite-experience-actions{display:grid;grid-template-columns:1fr;gap:.75rem}
  .lite-experience-actions .btn{width:100%}
  .lite-experience-link{justify-content:center;min-height:40px}

  .portfolio-video-column{padding-top:.25rem}
  .portfolio-video-stage{width:100%;max-width:360px;margin-inline:auto;border-radius:24px}
  .portfolio-video-stage::after{inset:8px;border-radius:17px}

  .cta-wave{border-radius:24px;padding:1.65rem 1.25rem}
  .cta-wave::after{border-width:42px;bottom:-40%;opacity:.75}
  .cta-wave h2{font-size:clamp(2.15rem,10vw,3rem);line-height:1.03}
  .cta-wave p{font-size:.94rem;line-height:1.65}
  .cta-wave .btn,.cta-wave button{width:100%;margin-top:.35rem}
  .athletic-band{padding:12px 0}
  .marquee-track{font-size:.7rem;gap:2rem}
  .marquee-track span::before{margin-right:2rem}

  /* Heróis internos */
  .page-hero{min-height:auto;padding:116px 0 58px;align-items:center}
  .page-hero::after{width:300px;height:300px;right:-130px;top:-70px}
  .page-hero h1{font-size:clamp(2.75rem,13vw,4rem);line-height:.98;letter-spacing:-.045em;text-wrap:balance}
  .page-hero .subtitle{font-size:.96rem;line-height:1.68;margin-top:1rem!important}
  .page-number{display:none!important}

  /* Pilates: hero realmente adaptado para mobile */
  .page-hero-image-banner.pilates-responsive-hero{position:relative;min-height:0;background:#03172b;overflow:hidden}
  .pilates-hero-picture{display:block;position:relative}
  .pilates-hero-picture img{width:100%;height:min(78dvh,720px);min-height:590px;object-fit:cover;object-position:center top;display:block}
  .pilates-responsive-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(3,23,43,.10) 0%,rgba(3,23,43,.03) 38%,rgba(3,23,43,.55) 70%,#03172b 100%)}
  .pilates-mobile-hero-copy{display:block;position:absolute;z-index:3;left:0;right:0;bottom:0;padding:2rem 1.2rem 1.7rem;color:white}
  .pilates-mobile-hero-copy .kicker{color:#66e4ff;margin-bottom:.75rem}
  .pilates-mobile-hero-copy h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.55rem,12vw,3.7rem);line-height:.96;letter-spacing:-.045em;margin:0;text-wrap:balance}
  .pilates-mobile-hero-copy p{margin:1rem 0 0;color:#c7dce8;font-size:.9rem;line-height:1.62;max-width:34rem}

  .pilates-benefits-showcase{padding:58px 0 66px}
  .pilates-benefits-heading{margin-bottom:28px}
  .pilates-benefits-heading .row{--bs-gutter-y:1rem}
  .pilates-benefits-panorama{box-shadow:0 18px 50px rgba(5,50,85,.12)}
  .pilates-benefits-panorama picture{display:block}
  .pilates-benefits-panorama img{width:100%;height:auto!important;aspect-ratio:auto;object-fit:contain;object-position:center;display:block}
  .pilates-benefits-panorama-shade{background:linear-gradient(180deg,transparent 65%,rgba(2,23,42,.14) 100%)}
  .pilates-benefits-float-wrap{margin-top:14px;padding-left:.75rem;padding-right:.75rem}
  .pilates-benefits-flex{display:flex;flex-direction:column;gap:12px}
  .pilates-float-card,.pilates-float-card-strength,.pilates-float-card-awareness{width:100%;max-width:none;min-height:0;padding:1.35rem 1.2rem;border-radius:20px;animation:none!important;transform:none!important}
  .pilates-float-card h3{font-size:1.85rem;margin-bottom:.7rem}
  .pilates-float-card p{font-size:.92rem;line-height:1.65}

  .pilates-process-apple{padding:66px 0 72px}
  .pilates-process-intro{margin-bottom:48px;text-align:left}
  .pilates-process-intro h2{font-size:clamp(2.65rem,11.5vw,3.65rem);line-height:.98;letter-spacing:-.045em;margin:.75rem 0 1.2rem}
  .pilates-process-intro p{font-size:.96rem;line-height:1.7}
  .pilates-process-layout{grid-template-columns:1fr;gap:42px}
  .pilates-process-sticky{position:relative;top:auto;min-height:auto;border-radius:24px;padding:1.65rem 1.3rem}
  .pilates-process-sticky h3{font-size:clamp(2.25rem,10vw,3rem);line-height:.98;margin-bottom:1.1rem}
  .pilates-process-sticky p{font-size:.93rem;line-height:1.67;padding-right:0}
  .process-sticky-label{font-size:.6rem;margin-bottom:1.1rem}
  .process-pulse{width:58px;height:58px;right:14px;bottom:14px;opacity:.52}
  .pilates-process-story{padding-left:2px}
  .pilates-process-story::before{left:5px}
  .process-chapter{padding-left:30px;padding-bottom:54px}
  .process-chapter::before{left:0;top:6px;width:10px;height:10px;box-shadow:0 0 0 6px rgba(56,215,238,.11)}
  .process-chapter-label{font-size:.6rem;letter-spacing:.13em;margin-bottom:.9rem}
  .process-chapter h3{font-size:clamp(2rem,9.5vw,2.8rem);line-height:1.02;margin-bottom:.85rem}
  .process-chapter p{font-size:.94rem;line-height:1.72}
  .pilates-process-finale{margin-top:54px;border-radius:24px;padding:2rem 1.2rem}
  .process-finale-kicker{font-size:.6rem;margin-bottom:1rem}
  .pilates-process-finale h3{font-size:clamp(2.15rem,10vw,3rem);line-height:1.02;margin-bottom:1.5rem}
  .pilates-process-finale .btn{width:100%}

  /* Fisioterapia / Portfolio — componentes que antes cortavam ou ficavam altos demais */
  .sticky-card{position:relative;top:auto;border-radius:22px;padding:1.4rem}
  .sticky-card li{font-size:.92rem;padding:.72rem 0}
  .program-card{border-radius:20px}
  .program-head,.program-body{padding-left:1.15rem;padding-right:1.15rem}
  .gallery-tile{min-height:230px;border-radius:22px;padding:1.3rem}
  .gallery-tile.reference-tile{min-height:300px;aspect-ratio:4/5}
  .gallery-tile.reference-tile img{object-position:center center}
  .gallery-tile.reference-tile .label{left:1.2rem;bottom:1.1rem;right:1.2rem}
  .gallery-tile.logo-tile{min-height:290px;padding:1rem}
  .gallery-tile.logo-tile img{max-height:260px;max-width:86%}
  .logo-stage{min-height:300px;border-radius:24px;padding:1.2rem}
  .logo-stage::before{width:82%}
  .logo-stage img{width:min(280px,78%)}
  .portfolio-card{border-radius:20px;padding:1.25rem}
  .portfolio-card h3{font-size:1.05rem}
  .timeline{margin-top:1.4rem}
  .timeline::before{left:13px}
  .timeline-item{padding-left:2.8rem;padding-bottom:1.8rem}
  .timeline-dot{left:3px;width:20px;height:20px;border-width:5px;box-shadow:0 0 0 4px #e3f9ff}
  .contact-shell{border-radius:24px}
  .contact-info,.contact-form{padding:1.45rem 1.2rem}
  .contact-info h2{font-size:clamp(2.35rem,11vw,3.15rem)}
  .contact-info p{font-size:.93rem;line-height:1.68}
  .contact-form .btn{width:100%}
  .form-control,.form-select{font-size:16px}

  /* Rodapé: compacto, legível e com fundo realista melhor enquadrado */
  footer{padding:72px 0 calc(26px + env(safe-area-inset-bottom));background-position:61% center;background-size:auto 100%;}
  footer::after{top:-14px;height:46px;opacity:.42}
  footer .row:first-child{padding:1.25rem 1rem;border-radius:20px;background:linear-gradient(180deg,rgba(5,30,45,.64),rgba(30,28,24,.56));backdrop-filter:blur(8px) saturate(110%);-webkit-backdrop-filter:blur(8px) saturate(110%)}
  footer .footer-logo{width:92px;margin-bottom:.2rem}
  footer h6{font-size:.65rem;letter-spacing:.11em;margin-bottom:.55rem}
  footer p,footer a{font-size:.88rem}
  footer .col-6{width:50%}
  footer .col-lg-4{margin-top:.25rem}
  footer .whatsapp-contact{padding:.28rem .55rem;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14)}
  .footer-bottom{display:block!important;margin-top:1.3rem;padding-top:1rem;font-size:.69rem;line-height:1.5}
  .footer-bottom span{display:block;width:100%;margin-bottom:.3rem}

  /* CTA móvel realmente útil */
  .floating-cta{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));width:auto;height:46px;padding:0 .9rem;border-radius:999px;font-size:.66rem;gap:.4rem;box-shadow:0 12px 28px rgba(0,69,129,.26)}
  .floating-cta span{display:inline!important}

  /* Modal */
  .modal-dialog{margin:.75rem}
  .modal-content{border-radius:20px}
  .modal-body{padding:1.2rem!important}
}

@media (max-width:390px){
  .brand-lockup small{display:none}
  .brand-lockup span{font-size:.66rem}
  .sea-nav .mobile-menu-toggle{min-width:72px;padding-inline:.5rem}
  .hero-title{font-size:clamp(2.65rem,12.8vw,3.45rem)}
  .pilates-hero-picture img{height:74dvh;min-height:560px}
  .pilates-mobile-hero-copy{padding:1.65rem 1rem 1.4rem}
  .pilates-mobile-hero-copy h1{font-size:clamp(2.35rem,11.5vw,3.2rem)}
  .page-hero h1{font-size:clamp(2.55rem,12.5vw,3.55rem)}
  .lite-experience-five{font-size:6.8rem}
  .floating-cta{height:44px;font-size:.62rem;padding-inline:.78rem}
}


/* === Fisioterapia: hero completo + jornada meta-like === */
.fisio-responsive-hero{position:relative;min-height:0;background:#03172b;overflow:hidden}
.fisio-hero-picture{display:block;position:relative}
.fisio-hero-picture img{display:block;width:100%;height:auto;object-fit:cover;object-position:center top}
.fisio-mobile-hero-copy{display:none}

.physio-journey-meta{padding:84px 0 88px;background:linear-gradient(180deg,#f7fbfd 0%,#eef7fb 100%)}
.physio-journey-head{margin-bottom:2.2rem}
.physio-meta-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:stretch}
.physio-meta-card{position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,252,255,.96));border:1px solid rgba(10,88,126,.10);border-radius:30px;overflow:hidden;box-shadow:0 18px 55px rgba(10,54,88,.08);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.physio-meta-card:hover{transform:translateY(-6px);box-shadow:0 24px 70px rgba(10,54,88,.14);border-color:rgba(38,185,233,.22)}
.physio-meta-card-feature{grid-row:span 2;min-height:100%}
.physio-meta-card-wide{grid-column:1 / -1;flex-direction:row;align-items:stretch}
.physio-meta-media{position:relative;overflow:hidden;background:#dceef7}
.physio-meta-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 35%,rgba(4,29,54,.10) 100%);pointer-events:none}
.physio-meta-media img{width:100%;height:100%;display:block;object-fit:cover;transform:scale(1.01);transition:transform .45s ease}
.physio-meta-card:hover .physio-meta-media img{transform:scale(1.05)}
.physio-meta-card-feature .physio-meta-media{aspect-ratio:4/3}
.physio-meta-media.small{aspect-ratio:16/9}
.physio-meta-media.wide{flex:0 0 44%;min-height:100%}
.physio-meta-body{padding:1.55rem 1.55rem 1.6rem}
.physio-meta-step{display:inline-flex;align-items:center;gap:.45rem;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#0b67ad;margin-bottom:.8rem}
.physio-meta-step::before{content:"";width:20px;height:2px;border-radius:999px;background:linear-gradient(90deg,#23d0ff,#0a7fff)}
.physio-meta-body h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.7rem,2.7vw,2.5rem);line-height:.98;letter-spacing:-.035em;color:#081b30;margin:0 0 .85rem}
.physio-meta-body p{margin:0;color:#61798e;font-size:1rem;line-height:1.72}
.physio-meta-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(10,88,126,.10);color:#0d456d;font-size:.82rem;font-weight:700;letter-spacing:.03em}

@media (max-width: 991px){
  .page-hero-image-banner.fisio-responsive-hero{position:relative;min-height:0;background:#03172b;overflow:hidden}
  .fisio-hero-picture img{width:100%;height:min(80dvh,760px);min-height:600px;object-fit:cover;object-position:center top;display:block}
  .fisio-responsive-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(3,23,43,.08) 0%,rgba(3,23,43,.03) 38%,rgba(3,23,43,.62) 74%,#03172b 100%)}
  .fisio-mobile-hero-copy{display:block;position:absolute;z-index:3;left:0;right:0;bottom:0;padding:2rem 1.2rem 1.7rem;color:white}
  .fisio-mobile-hero-copy .kicker{color:#66e4ff;margin-bottom:.75rem}
  .fisio-mobile-hero-copy h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.4rem,11vw,3.45rem);line-height:.97;letter-spacing:-.045em;margin:0;text-wrap:balance}
  .fisio-mobile-hero-copy p{margin:1rem 0 0;color:#c7dce8;font-size:.9rem;line-height:1.62;max-width:34rem}

  .physio-journey-meta{padding:66px 0 70px}
  .physio-meta-grid{grid-template-columns:1fr;gap:16px}
  .physio-meta-card-feature{grid-row:auto}
  .physio-meta-card-wide{grid-column:auto;flex-direction:column}
  .physio-meta-media.wide{flex:auto}
}

@media (max-width: 767.98px){
  .physio-meta-card{border-radius:22px}
  .physio-meta-body{padding:1.2rem 1.15rem 1.25rem}
  .physio-meta-step{font-size:.62rem;letter-spacing:.13em}
  .physio-meta-body h3{font-size:clamp(1.9rem,8.8vw,2.45rem);line-height:1.02}
  .physio-meta-body p{font-size:.93rem;line-height:1.67}
}

@media (max-width:390px){
  .fisio-hero-picture img{height:74dvh;min-height:560px}
  .fisio-mobile-hero-copy{padding:1.65rem 1rem 1.45rem}
  .fisio-mobile-hero-copy h1{font-size:clamp(2.2rem,11vw,3rem)}
}

/* Ajuste da Jornada Clínica — elimina vazios no grid e equilibra os cards */
@media (min-width: 992px){
  .physio-meta-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:start;
    grid-auto-flow:row;
  }
  .physio-meta-card-feature,
  .physio-meta-card-wide{
    grid-row:auto;
    grid-column:auto;
    min-height:0;
    flex-direction:column;
    align-items:stretch;
  }
  .physio-meta-card-feature .physio-meta-media,
  .physio-meta-media.small,
  .physio-meta-media.wide{
    flex:none;
    width:100%;
    min-height:0;
    aspect-ratio:16/9;
  }
  .physio-meta-card{
    height:100%;
  }
  .physio-meta-body{
    display:flex;
    flex-direction:column;
    flex:1;
  }
  .physio-meta-footer{
    margin-top:auto;
  }
}

/* === Fisioterapia / Processo com narrativa de produto === */
.physio-process-apple{position:relative;overflow:hidden;padding:112px 0 118px;background:#05090d;color:#f5f8fb}
.physio-process-apple::before{content:"";position:absolute;width:760px;height:760px;left:-380px;top:16%;border-radius:50%;background:radial-gradient(circle,rgba(29,170,232,.12),transparent 66%);pointer-events:none}
.physio-process-apple::after{content:"";position:absolute;width:620px;height:620px;right:-340px;bottom:2%;border-radius:50%;background:radial-gradient(circle,rgba(66,224,255,.08),transparent 67%);pointer-events:none}
.physio-process-apple>.container{position:relative;z-index:2}
.physio-process-intro{max-width:1020px;margin:0 auto 88px;text-align:center}
.physio-process-intro .eyebrow{color:#62e4ff}
.physio-process-intro h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(3.4rem,7vw,7.1rem);line-height:.9;letter-spacing:-.055em;margin:.8rem 0 1.6rem;color:#fff}
.physio-process-intro h2 span{color:#7fe8ff}
.physio-process-intro p{max-width:760px;margin:0 auto;color:#93a7b7;font-size:1.06rem;line-height:1.85}
.physio-process-layout{display:grid;grid-template-columns:minmax(400px,.9fr) minmax(0,1.1fr);gap:clamp(4rem,8vw,8rem);align-items:start}
.physio-process-visual{position:relative;min-height:100%;height:auto}
.physio-process-device{position:relative;min-height:650px;border-radius:42px;background:linear-gradient(155deg,#0b1823,#071018 60%,#0a2436);border:1px solid rgba(255,255,255,.08);box-shadow:0 40px 100px rgba(0,0,0,.42);overflow:hidden;isolation:isolate;will-change:transform;transition:transform .18s linear}
.physio-process-device::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 20%,transparent 78%,rgba(63,216,255,.06));pointer-events:none;z-index:3}
.physio-process-glow{position:absolute;inset:8% 8% auto;height:46%;border-radius:50%;background:radial-gradient(circle,rgba(48,204,255,.2),transparent 66%);filter:blur(24px);z-index:0}
.physio-process-image-stage{position:absolute;inset:0;z-index:1}
.physio-process-image-stage::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,9,15,.02) 32%,rgba(2,9,15,.34) 66%,rgba(2,9,15,.96) 100%);z-index:4;pointer-events:none}
.physio-process-image-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.035);transition:opacity .65s ease,transform 1s cubic-bezier(.2,.7,.2,1)}
.physio-process-image-stage img.is-active{opacity:1;transform:scale(1)}
.physio-process-display-copy{position:absolute;left:2rem;right:2rem;bottom:2rem;z-index:6;display:flex;align-items:end;justify-content:flex-start;gap:1rem}
.physio-process-display-copy strong{font-family:"Playfair Display",Georgia,serif;font-size:2.2rem;line-height:1;color:#fff;font-weight:600}
.physio-process-chapters{position:relative}
.physio-process-chapter{min-height:72vh;display:flex;flex-direction:column;justify-content:center;padding:5rem 0;opacity:.34;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}
.physio-process-chapter.is-active{opacity:1;transform:none}
.physio-process-kicker{font-size:.66rem;text-transform:uppercase;letter-spacing:.15em;font-weight:850;color:#66ddf8;margin-bottom:1.15rem}
.physio-process-chapter h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.7rem,4.8vw,4.9rem);line-height:.95;letter-spacing:-.045em;margin:0 0 1.4rem;color:#fff;max-width:720px}
.physio-process-chapter p{font-size:1.04rem;line-height:1.85;color:#9db0bf;max-width:660px;margin:0}
.physio-process-insight{display:flex;align-items:center;gap:.7rem;margin-top:1.5rem;color:#d5e2e9;font-size:.87rem;font-weight:650;letter-spacing:.01em}
.physio-process-insight span{width:26px;height:2px;border-radius:999px;background:linear-gradient(90deg,#24c5ff,#6ce9ff);flex:0 0 26px}
.physio-process-mobile-image{display:none}
.physio-process-finale{margin-top:86px;padding:clamp(2rem,5vw,4.8rem);border-radius:40px;text-align:center;background:linear-gradient(145deg,#f9fdff,#eaf7fb);color:#081a2d;border:1px solid rgba(70,183,220,.14);box-shadow:0 34px 90px rgba(0,0,0,.22)}
.physio-process-finale>span{display:block;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.16em;font-weight:850;font-size:.65rem;color:#1177b8}
.physio-process-finale h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.7rem,5.7vw,5.6rem);line-height:.93;letter-spacing:-.05em;margin:0 auto 2rem;max-width:1000px}

@media (max-width:1199px){
  .physio-process-layout{grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);gap:3.5rem}
  .physio-process-device{min-height:560px}
}

@media (max-width:991.98px){
  .physio-process-apple{padding:76px 0 80px}
  .physio-process-intro{margin-bottom:50px;text-align:left}
  .physio-process-intro h2{font-size:clamp(2.9rem,10.5vw,4.8rem);line-height:.95}
  .physio-process-intro p{margin-left:0;font-size:.96rem;line-height:1.72}
  .physio-process-layout{grid-template-columns:1fr;gap:0}
  .physio-process-visual{display:none}
  .physio-process-chapter{min-height:0;padding:2.3rem 0 3.4rem;opacity:1;transform:none}
  .physio-process-mobile-image{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:24px;margin-bottom:1.45rem;box-shadow:0 18px 50px rgba(0,0,0,.28)}
  .physio-process-chapter h3{font-size:clamp(2.25rem,9.8vw,3.5rem);line-height:1}
  .physio-process-chapter p{font-size:.95rem;line-height:1.72}
  .physio-process-finale{margin-top:28px;border-radius:28px;padding:2.1rem 1.25rem}
}

@media (max-width:575px){
  .physio-process-apple{padding:64px 0 70px}
  .physio-process-intro h2{font-size:clamp(2.55rem,12vw,3.5rem)}
  .physio-process-chapter{padding:1.8rem 0 2.7rem}
  .physio-process-mobile-image{border-radius:20px;aspect-ratio:4/3}
  .physio-process-kicker{font-size:.6rem;margin-bottom:.85rem}
  .physio-process-insight{font-size:.78rem;line-height:1.5;align-items:flex-start}
  .physio-process-finale h3{font-size:clamp(2.3rem,11vw,3.3rem)}
  .physio-process-finale .btn{width:100%}
}

@media (min-width: 992px){.physio-process-chapters{padding-top:.25rem}.physio-process-visual{padding-top:.2rem}}


/* === Portfólio: hero editorial com apenas o título === */
.portfolio-hero-banner{position:relative;width:100%;overflow:hidden;background:#061d36;min-height:72vh}
.portfolio-hero-picture,.portfolio-hero-picture img{display:block;width:100%;height:100%}
.portfolio-hero-picture{position:absolute;inset:0}
.portfolio-hero-picture img{object-fit:cover;object-position:center center}
.portfolio-hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(3,20,37,.92) 0%,rgba(3,20,37,.76) 27%,rgba(3,20,37,.24) 52%,rgba(3,20,37,.03) 72%),linear-gradient(180deg,rgba(3,20,37,.08),rgba(3,20,37,.18))}
.portfolio-hero-content{position:relative;z-index:2;min-height:72vh;display:flex;align-items:center;padding-top:105px;padding-bottom:70px}
.portfolio-hero-content h1{margin:0;max-width:760px;font-family:"Playfair Display",Georgia,serif;font-size:clamp(4rem,7.2vw,7.4rem);line-height:.92;letter-spacing:-.055em;color:#fff;text-wrap:balance;text-shadow:0 10px 34px rgba(0,0,0,.22)}
@media (max-width:991.98px){.portfolio-hero-banner{min-height:70vh}.portfolio-hero-content{min-height:70vh;padding-top:105px;padding-bottom:54px;align-items:flex-end}.portfolio-hero-shade{background:linear-gradient(180deg,rgba(3,20,37,.02) 0%,rgba(3,20,37,.12) 48%,rgba(3,20,37,.88) 100%)}.portfolio-hero-content h1{max-width:680px;font-size:clamp(3rem,10vw,5.2rem)}}
@media (max-width:767.98px){.portfolio-hero-banner{min-height:78dvh}.portfolio-hero-picture img{object-position:center top}.portfolio-hero-content{min-height:78dvh;padding:110px 1rem 1.65rem;align-items:flex-end}.portfolio-hero-content h1{font-size:clamp(2.65rem,12vw,3.8rem);line-height:.96;letter-spacing:-.045em}}


/* === Portfólio hero: imagem inteira, sem recorte === */
.portfolio-hero-banner{
  position:relative;
  width:100%;
  min-height:0!important;
  height:auto!important;
  overflow:hidden;
  background:#061d36;
}
.portfolio-hero-picture{
  position:relative!important;
  inset:auto!important;
  display:block;
  width:100%;
  height:auto!important;
}
.portfolio-hero-picture img{
  display:block;
  width:100%;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.portfolio-hero-shade{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(3,20,37,.84) 0%,rgba(3,20,37,.64) 26%,rgba(3,20,37,.18) 48%,rgba(3,20,37,0) 68%);
}
.portfolio-hero-content{
  position:absolute!important;
  inset:0;
  z-index:2;
  min-height:0!important;
  height:100%!important;
  display:flex;
  align-items:center;
  padding-top:clamp(72px,7vw,112px)!important;
  padding-bottom:clamp(24px,4vw,64px)!important;
}
.portfolio-hero-content h1{
  max-width:min(46vw,760px);
  font-size:clamp(3.2rem,6.5vw,6.9rem);
  line-height:.92;
}
@media (max-width:991.98px){
  .portfolio-hero-banner{min-height:0!important;height:auto!important}
  .portfolio-hero-content{
    min-height:0!important;
    height:100%!important;
    align-items:flex-end;
    padding-top:80px!important;
    padding-bottom:24px!important;
  }
  .portfolio-hero-content h1{
    max-width:48vw;
    font-size:clamp(2.2rem,7vw,4.4rem);
  }
}
@media (max-width:767.98px){
  .portfolio-hero-banner{min-height:0!important;height:auto!important}
  .portfolio-hero-picture img{
    width:100%;
    height:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  .portfolio-hero-shade{
    background:linear-gradient(90deg,rgba(3,20,37,.78) 0%,rgba(3,20,37,.46) 32%,rgba(3,20,37,.08) 58%,rgba(3,20,37,0) 76%);
  }
  .portfolio-hero-content{
    inset:0;
    height:100%!important;
    align-items:flex-end;
    padding:0 1rem 1rem!important;
  }
  .portfolio-hero-content h1{
    max-width:52vw;
    font-size:clamp(1.5rem,7.5vw,2.5rem);
    line-height:.98;
    letter-spacing:-.035em;
  }
}
@media (max-width:420px){
  .portfolio-hero-content h1{max-width:54vw;font-size:clamp(1.35rem,7vw,2.1rem)}
}

/* === Fisioterapia — revisão mobile 2026 === */
@media (max-width: 767.98px){
  .page-fisioterapia{background:#f6fbfd}
  .page-fisioterapia main,.page-fisioterapia section,.page-fisioterapia header{max-width:100%;overflow-x:clip}

  /* Hero: imagem visível e texto fora da área fotográfica para não cortar pessoas */
  .page-fisioterapia .fisio-responsive-hero{background:#03172b;overflow:hidden}
  .page-fisioterapia .fisio-hero-picture{display:block;background:#dcecf5}
  .page-fisioterapia .fisio-hero-picture img{
    display:block;
    width:100%;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  .page-fisioterapia .fisio-responsive-hero::after{display:none}
  .page-fisioterapia .fisio-mobile-hero-copy{
    display:block;
    position:relative;
    inset:auto;
    z-index:2;
    padding:1.45rem 1rem 2rem;
    background:linear-gradient(180deg,#082744 0%,#03172b 100%);
    color:#fff;
  }
  .page-fisioterapia .fisio-mobile-hero-copy .kicker{margin-bottom:.7rem;font-size:.62rem;letter-spacing:.15em}
  .page-fisioterapia .fisio-mobile-hero-copy h1{
    margin:0;
    max-width:100%;
    font-size:clamp(2.25rem,10.8vw,3.15rem);
    line-height:.98;
    letter-spacing:-.042em;
    text-wrap:balance;
    overflow-wrap:anywhere;
  }
  .page-fisioterapia .fisio-mobile-hero-copy p{
    margin:.9rem 0 0;
    max-width:34rem;
    color:#c8dce8;
    font-size:.91rem;
    line-height:1.62;
  }

  /* Jornada clínica */
  .page-fisioterapia .physio-journey-meta{padding:3.6rem 0 4rem}
  .page-fisioterapia .physio-journey-head{margin-bottom:1.65rem;--bs-gutter-y:1rem}
  .page-fisioterapia .physio-journey-head .display-title{
    font-size:clamp(2.2rem,10.4vw,3rem);
    line-height:1;
    letter-spacing:-.038em;
  }
  .page-fisioterapia .physio-journey-head .lead-muted{font-size:.93rem;line-height:1.68}
  .page-fisioterapia .physio-meta-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
  .page-fisioterapia .physio-meta-card,
  .page-fisioterapia .physio-meta-card-feature,
  .page-fisioterapia .physio-meta-card-wide{
    width:100%;
    min-width:0;
    min-height:0;
    height:auto;
    grid-column:auto;
    grid-row:auto;
    flex-direction:column;
    border-radius:22px;
    transform:none!important;
  }
  .page-fisioterapia .physio-meta-card:hover{transform:none!important;box-shadow:0 16px 42px rgba(10,54,88,.08)}
  .page-fisioterapia .physio-meta-media,
  .page-fisioterapia .physio-meta-card-feature .physio-meta-media,
  .page-fisioterapia .physio-meta-media.small,
  .page-fisioterapia .physio-meta-media.wide{
    display:block;
    flex:none;
    width:100%;
    min-height:0;
    aspect-ratio:auto!important;
  }
  .page-fisioterapia .physio-meta-picture{display:block;width:100%}
  .page-fisioterapia .physio-meta-media img{
    display:block;
    width:100%;
    height:auto!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
  }
  .page-fisioterapia .physio-meta-body{display:block;padding:1.15rem 1.1rem 1.3rem}
  .page-fisioterapia .physio-meta-step{font-size:.6rem;letter-spacing:.09em;line-height:1.45;margin-bottom:.65rem;white-space:normal}
  .page-fisioterapia .physio-meta-step::before{width:16px;flex:0 0 16px}
  .page-fisioterapia .physio-meta-body h3{font-size:clamp(1.82rem,8.6vw,2.35rem);line-height:1.02;margin-bottom:.75rem;overflow-wrap:anywhere}
  .page-fisioterapia .physio-meta-body p{font-size:.92rem;line-height:1.65}
  .page-fisioterapia .physio-meta-footer{margin-top:.9rem;padding-top:.85rem;font-size:.76rem;line-height:1.5;letter-spacing:.01em}

  /* Processo: leitura vertical simples no touch, imagens inteiras */
  .page-fisioterapia .physio-process-apple{padding:3.8rem 0 4rem}
  .page-fisioterapia .physio-process-apple::before{width:360px;height:360px;left:-230px;top:6%}
  .page-fisioterapia .physio-process-apple::after{width:320px;height:320px;right:-220px;bottom:8%}
  .page-fisioterapia .physio-process-intro{margin:0 0 2.1rem;text-align:left}
  .page-fisioterapia .physio-process-intro h2{
    margin:.65rem 0 1rem;
    max-width:100%;
    font-size:clamp(2.45rem,11vw,3.35rem);
    line-height:.97;
    letter-spacing:-.042em;
    text-wrap:balance;
  }
  .page-fisioterapia .physio-process-intro h2 br{display:none}
  .page-fisioterapia .physio-process-intro p{font-size:.93rem;line-height:1.7}
  .page-fisioterapia .physio-process-layout{display:block}
  .page-fisioterapia .physio-process-visual{display:none!important}
  .page-fisioterapia .physio-process-chapters{padding:0}
  .page-fisioterapia .physio-process-chapter{
    display:block;
    width:100%;
    min-width:0;
    min-height:0;
    padding:1.4rem 0 2.45rem;
    opacity:1!important;
    transform:none!important;
    border-top:1px solid rgba(255,255,255,.09);
  }
  .page-fisioterapia .physio-process-chapter:first-child{border-top:0;padding-top:0}
  .page-fisioterapia .physio-process-mobile-image{
    display:block;
    width:100%;
    height:auto!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center!important;
    margin:0 0 1.2rem;
    border-radius:20px;
    box-shadow:0 16px 38px rgba(0,0,0,.24);
  }
  .page-fisioterapia .physio-process-kicker{display:block;font-size:.59rem;letter-spacing:.1em;line-height:1.5;margin-bottom:.65rem}
  .page-fisioterapia .physio-process-chapter h3{
    max-width:100%;
    margin:0 0 .85rem;
    font-size:clamp(2rem,9.2vw,2.75rem);
    line-height:1;
    letter-spacing:-.035em;
    overflow-wrap:anywhere;
  }
  .page-fisioterapia .physio-process-chapter p{max-width:100%;font-size:.92rem;line-height:1.68}
  .page-fisioterapia .physio-process-insight{display:grid;grid-template-columns:20px minmax(0,1fr);gap:.55rem;margin-top:1rem;font-size:.78rem;line-height:1.5}
  .page-fisioterapia .physio-process-insight span{width:20px;margin-top:.55rem}
  .page-fisioterapia .physio-process-finale{margin-top:1rem;padding:1.75rem 1.05rem;border-radius:24px}
  .page-fisioterapia .physio-process-finale>span{font-size:.58rem;letter-spacing:.11em;margin-bottom:.75rem}
  .page-fisioterapia .physio-process-finale h3{font-size:clamp(2rem,9.5vw,2.75rem);line-height:1.01;margin-bottom:1.25rem}
  .page-fisioterapia .physio-process-finale h3 br{display:none}
  .page-fisioterapia .physio-process-finale .btn{width:100%;white-space:normal;line-height:1.3}

  /* CTA final */
  .page-fisioterapia .physio-eval-cta{padding:0 0 2.7rem!important}
  .page-fisioterapia .physio-eval-cta>.container{padding-bottom:0!important}
  .page-fisioterapia .physio-eval-cta .cta-wave{padding:1.45rem 1rem;border-radius:22px}
  .page-fisioterapia .physio-eval-cta .cta-wave h2{font-size:clamp(2rem,9.5vw,2.7rem);line-height:1.02}
  .page-fisioterapia .physio-eval-cta .cta-wave p{font-size:.91rem;line-height:1.62}

  /* Footer e modal sem apertos em telas estreitas */
  .page-fisioterapia footer .row:first-child{row-gap:1.15rem!important}
  .page-fisioterapia footer .col-6{width:100%}
  .page-fisioterapia footer .col-lg-4{width:100%}
  .page-fisioterapia footer a,.page-fisioterapia footer p{overflow-wrap:anywhere}
  .page-fisioterapia .floating-cta{max-width:calc(100vw - 24px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .page-fisioterapia .modal-dialog{margin:.55rem}
  .page-fisioterapia .modal-content{max-height:calc(100dvh - 1.1rem);overflow:auto}
}

@media (max-width: 390px){
  .page-fisioterapia .fisio-mobile-hero-copy{padding:1.25rem .9rem 1.65rem}
  .page-fisioterapia .fisio-mobile-hero-copy h1{font-size:clamp(2.05rem,10.5vw,2.7rem)}
  .page-fisioterapia .physio-journey-meta{padding:3.1rem 0 3.45rem}
  .page-fisioterapia .physio-meta-body{padding:1rem .95rem 1.15rem}
  .page-fisioterapia .physio-process-apple{padding:3.25rem 0 3.5rem}
  .page-fisioterapia .physio-process-intro h2{font-size:clamp(2.2rem,10.8vw,2.85rem)}
  .page-fisioterapia .physio-process-chapter h3{font-size:clamp(1.9rem,9vw,2.4rem)}
  .page-fisioterapia .physio-process-finale h3{font-size:clamp(1.9rem,9vw,2.45rem)}
}


/* === Patch final: Hero mobile da Fisioterapia no mesmo padrão do Pilates === */
@media (max-width: 767.98px){
  .page-fisioterapia .fisio-responsive-hero{
    position:relative;
    background:#03172b;
    overflow:hidden;
  }
  .page-fisioterapia .fisio-hero-picture{
    position:relative;
    display:block;
    background:#03172b;
  }
  .page-fisioterapia .fisio-hero-picture img{
    display:block;
    width:100%;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center top!important;
  }
  .page-fisioterapia .fisio-responsive-hero::after{
    display:block!important;
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(180deg,rgba(3,23,43,.06) 0%,rgba(3,23,43,0) 36%,rgba(3,23,43,.54) 72%,#03172b 100%);
  }
  .page-fisioterapia .fisio-mobile-hero-copy{
    display:block;
    position:absolute!important;
    left:0;
    right:0;
    bottom:0;
    z-index:3;
    padding:1.6rem 1rem 1.4rem;
    background:transparent!important;
    color:#fff;
  }
  .page-fisioterapia .fisio-mobile-hero-copy .kicker{
    color:#66e4ff;
    margin-bottom:.7rem;
    font-size:.62rem;
    letter-spacing:.15em;
  }
  .page-fisioterapia .fisio-mobile-hero-copy h1{
    margin:0;
    max-width:100%;
    font-size:clamp(2.2rem,10.8vw,3rem);
    line-height:.96;
    letter-spacing:-.042em;
    text-wrap:balance;
    overflow-wrap:anywhere;
    color:#fff;
    text-shadow:0 10px 26px rgba(0,0,0,.24);
  }
  .page-fisioterapia .fisio-mobile-hero-copy p{
    margin:.8rem 0 0;
    max-width:31rem;
    color:#c7dce8;
    font-size:.88rem;
    line-height:1.58;
  }
}
@media (max-width: 390px){
  .page-fisioterapia .fisio-mobile-hero-copy{
    padding:1.35rem .92rem 1.2rem;
  }
  .page-fisioterapia .fisio-mobile-hero-copy h1{
    font-size:clamp(2rem,10.4vw,2.65rem);
  }
  .page-fisioterapia .fisio-mobile-hero-copy p{
    font-size:.84rem;
  }
}


/* === Portfólio profissional + revisão responsiva === */
.page-portfolio{overflow-x:hidden}
.page-portfolio .portfolio-hero-banner{position:relative;overflow:hidden;background:#061d36}
.page-portfolio .portfolio-hero-picture{display:block;position:relative;width:100%;height:auto}
.page-portfolio .portfolio-hero-picture img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
.page-portfolio .portfolio-hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,20,37,.84) 0%,rgba(3,20,37,.62) 28%,rgba(3,20,37,.12) 56%,rgba(3,20,37,0) 76%);pointer-events:none}
.page-portfolio .portfolio-hero-content{position:absolute;inset:0;z-index:2;display:flex;align-items:center;padding-top:88px;padding-bottom:40px}
.page-portfolio .portfolio-hero-content h1{max-width:min(46vw,720px);font-size:clamp(3.3rem,6.4vw,6.5rem);line-height:.92;letter-spacing:-.055em}

.portfolio-about-section{padding-top:90px}
.professional-id-card{height:100%;min-height:560px;border-radius:36px;padding:2rem;display:flex;flex-direction:column;background:radial-gradient(circle at 80% 10%,rgba(46,207,244,.18),transparent 28%),linear-gradient(145deg,#092d4c,#041b31 62%,#031526);color:white;box-shadow:0 28px 70px rgba(4,38,66,.20);overflow:hidden;position:relative}
.professional-id-card::after{content:"";position:absolute;width:410px;height:410px;border:1px solid rgba(102,228,255,.17);border-radius:50%;right:-240px;bottom:-210px}
.professional-id-brand{display:flex;align-items:center;gap:.9rem;position:relative;z-index:2}
.professional-id-brand img{width:74px;height:74px;object-fit:contain}
.professional-id-brand span{display:block;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.professional-id-brand small{display:block;color:#7fe8ff;text-transform:uppercase;letter-spacing:.14em;font-size:.62rem;margin-top:.2rem}
.professional-id-copy{margin:auto 0 1.8rem;position:relative;z-index:2}
.professional-id-kicker{display:block;color:#70e7ff;font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.16em;margin-bottom:.8rem}
.professional-id-copy h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.8rem,5vw,4.8rem);line-height:.95;margin:0 0 1rem}
.professional-id-copy p{max-width:29rem;color:#b9d0df;line-height:1.7;margin:0}
.professional-credentials{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;position:relative;z-index:2}
.professional-credentials>div{padding:1rem;border-radius:18px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.055);backdrop-filter:blur(8px)}
.professional-credentials span{display:block;color:#72e5ff;text-transform:uppercase;font-size:.59rem;font-weight:850;letter-spacing:.14em;margin-bottom:.35rem}
.professional-credentials strong{font-size:.84rem;letter-spacing:.01em;overflow-wrap:anywhere}
.language-badge{position:relative;z-index:2;margin-top:.85rem;display:flex;align-items:center;gap:.65rem;padding:.9rem 1rem;border-radius:16px;background:rgba(63,205,239,.12);color:#e8f9ff;font-size:.82rem;font-weight:700}
.language-badge i{color:#70e7ff;font-size:1.05rem}
.portfolio-name{font-size:clamp(3.3rem,6vw,6.3rem);line-height:.93;letter-spacing:-.055em}
.portfolio-professional-summary{font-size:1.08rem;line-height:1.82;color:#687f93;max-width:820px}
.portfolio-professional-summary strong{color:#123e60;font-weight:750}
.portfolio-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.portfolio-profile-grid .portfolio-card{min-width:0}
.portfolio-card-heading{display:flex;align-items:center;gap:.8rem;margin-bottom:.75rem}
.portfolio-card-heading .icon{margin:0;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#e6f9ff;flex:0 0 42px}
.portfolio-card-heading h3{margin:0}
.formation-only-list{padding:0;margin:.25rem 0 0;list-style:none;display:grid;gap:.65rem}
.formation-only-list li{color:#5e778b;line-height:1.45;padding:.68rem .8rem;border-radius:13px;background:#f5fbfe;font-size:.88rem;font-weight:650}
.portfolio-language-card{background:linear-gradient(145deg,#ffffff,#f2fbff)}

.portfolio-timeline-section{position:relative;overflow:hidden}
.portfolio-timeline-section::after{content:"";position:absolute;width:620px;height:620px;border-radius:50%;right:-330px;top:10%;background:radial-gradient(circle,rgba(61,211,245,.08),transparent 68%);pointer-events:none}
.portfolio-timeline-intro{position:sticky;top:125px}
.professional-timeline .timeline-item{padding-bottom:2.7rem}
.professional-timeline .timeline-item h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.04;margin:.45rem 0 .55rem}
.professional-timeline .timeline-item p{font-size:1rem;margin:0}

.portfolio-focus-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:18px}
.portfolio-focus-card{min-height:320px;padding:2rem;border-radius:30px;background:white;border:1px solid #dcecf4;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:0 18px 55px rgba(11,54,89,.07);position:relative;overflow:hidden}
.portfolio-focus-card::before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-100px;top:-105px;background:radial-gradient(circle,rgba(50,202,239,.16),transparent 70%)}
.portfolio-focus-card span{position:relative;color:#0b71b2;font-weight:850;font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;margin-bottom:.8rem}
.portfolio-focus-card h3{position:relative;font-family:"Playfair Display",Georgia,serif;font-size:clamp(2rem,3.2vw,3.15rem);line-height:.98;color:#081d31;margin:0 0 1rem}
.portfolio-focus-card p{position:relative;color:#657e92;line-height:1.7;margin:0}
.portfolio-focus-feature{background:linear-gradient(145deg,#092f50,#061b31);border-color:transparent;color:#fff}
.portfolio-focus-feature h3{color:#fff}
.portfolio-focus-feature p{color:#b8d0df}
.portfolio-focus-feature span{color:#71e4ff}

@media (max-width:991.98px){
  .page-portfolio .portfolio-hero-content{padding:92px 1.2rem 1.6rem;align-items:flex-end}
  .page-portfolio .portfolio-hero-shade{background:linear-gradient(180deg,rgba(3,20,37,.03) 0%,rgba(3,20,37,.10) 48%,rgba(3,20,37,.88) 100%)}
  .page-portfolio .portfolio-hero-content h1{max-width:760px;font-size:clamp(3rem,9vw,5rem)}
  .professional-id-card{min-height:470px}
  .portfolio-timeline-intro{position:relative;top:auto}
  .portfolio-focus-grid{grid-template-columns:1fr 1fr}
  .portfolio-focus-feature{grid-column:1/-1}
}

@media (max-width:767.98px){
  .page-portfolio .portfolio-hero-banner{min-height:0!important;height:auto!important}
  .page-portfolio .portfolio-hero-picture{height:auto!important}
  .page-portfolio .portfolio-hero-picture img{width:100%;height:auto!important;object-fit:contain!important;object-position:center top!important}
  .page-portfolio .portfolio-hero-content{padding:0 1rem 1.15rem!important;align-items:flex-end!important}
  .page-portfolio .portfolio-hero-content h1{max-width:94%;font-size:clamp(2.4rem,11.5vw,3.55rem);line-height:.96;letter-spacing:-.045em}
  .portfolio-about-section{padding-top:3.7rem}
  .professional-id-card{min-height:0;border-radius:26px;padding:1.3rem}
  .professional-id-brand img{width:58px;height:58px}
  .professional-id-copy{margin:3rem 0 1.25rem}
  .professional-id-copy h3{font-size:2.7rem}
  .professional-credentials{grid-template-columns:1fr;gap:.65rem}
  .portfolio-name{font-size:clamp(2.75rem,12vw,4rem);line-height:.94;overflow-wrap:anywhere}
  .portfolio-professional-summary{font-size:.94rem;line-height:1.7}
  .portfolio-profile-grid{grid-template-columns:1fr;gap:12px}
  .portfolio-profile-grid .portfolio-card{border-radius:20px;padding:1.15rem}
  .formation-only-list li{font-size:.84rem}
  .portfolio-timeline-section{padding-top:4rem;padding-bottom:4rem}
  .portfolio-timeline-intro .display-title{font-size:clamp(2.45rem,11vw,3.3rem);line-height:.98}
  .professional-timeline{margin-top:.6rem}
  .professional-timeline::before{left:11px}
  .professional-timeline .timeline-item{padding:0 0 2rem 2.55rem}
  .professional-timeline .timeline-dot{left:1px;top:.1rem;width:20px;height:20px}
  .professional-timeline .timeline-item h3{font-size:clamp(1.7rem,8vw,2.25rem)}
  .professional-timeline .timeline-item p{font-size:.9rem}
  .portfolio-focus-section{padding-top:4rem;padding-bottom:4rem}
  .portfolio-focus-grid{grid-template-columns:1fr;gap:12px}
  .portfolio-focus-feature{grid-column:auto}
  .portfolio-focus-card{min-height:260px;border-radius:23px;padding:1.35rem}
  .portfolio-focus-card h3{font-size:clamp(2rem,9vw,2.7rem)}
  .page-portfolio .contact-shell{border-radius:24px}
  .page-portfolio .contact-info,.page-portfolio .contact-form{padding:1.35rem!important}
  .page-portfolio .floating-cta{max-width:calc(100vw - 24px)}
  .page-portfolio footer .col-6,.page-portfolio footer .col-lg-4{width:100%}
}

@media (max-width:390px){
  .page-portfolio .portfolio-hero-content h1{font-size:clamp(2.15rem,10.8vw,3rem)}
  .portfolio-name{font-size:clamp(2.5rem,11.5vw,3.5rem)}
  .professional-id-card{padding:1.15rem}
  .language-badge{font-size:.76rem}
}

/* === Portfólio 2026: reorganização visual + contato direto === */
.page-portfolio .portfolio-about-section .row{align-items:stretch}
.page-portfolio .professional-id-card{min-height:520px}
.page-portfolio .portfolio-profile-grid{grid-auto-rows:1fr}
.page-portfolio .portfolio-profile-grid .portfolio-card{height:100%;display:flex;flex-direction:column}
.page-portfolio .portfolio-card-heading{flex:0 0 auto}
.page-portfolio .portfolio-card p,.page-portfolio .formation-only-list{margin-bottom:0}
.page-portfolio .portfolio-timeline-intro{max-width:520px}
.page-portfolio .professional-timeline{max-width:760px;margin-left:auto}
.page-portfolio .portfolio-focus-card{min-width:0}

.portfolio-contact-section{padding-bottom:96px}
.portfolio-contact-shell{
  display:grid;
  grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);
  gap:clamp(2rem,4vw,4.8rem);
  padding:clamp(2rem,4vw,4.4rem);
  border-radius:38px;
  overflow:hidden;
  position:relative;
  background:
    radial-gradient(circle at 92% 12%,rgba(77,217,250,.14),transparent 27%),
    linear-gradient(145deg,#092f50 0%,#061b31 58%,#031421 100%);
  box-shadow:0 30px 85px rgba(5,38,65,.18);
}
.portfolio-contact-shell::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  left:-310px;
  bottom:-330px;
  border:1px solid rgba(106,229,255,.13);
  border-radius:50%;
  pointer-events:none;
}
.portfolio-contact-intro{position:relative;z-index:2;align-self:center}
.portfolio-contact-intro h2{
  margin:.7rem 0 1.1rem;
  font-family:"Playfair Display",Georgia,serif;
  font-size:clamp(2.7rem,4.8vw,5rem);
  line-height:.94;
  letter-spacing:-.05em;
  color:#fff;
}
.portfolio-contact-intro h2 span{color:#7fe8ff}
.portfolio-contact-intro>p{margin:0;max-width:31rem;color:#b6ccda;line-height:1.75}
.portfolio-contact-identity{display:grid;gap:.7rem;margin-top:1.65rem}
.portfolio-contact-identity>div,.portfolio-contact-identity>a{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  grid-template-areas:"icon label" "icon value";
  align-items:center;
  column-gap:.75rem;
  padding:.85rem 1rem;
  border:1px solid rgba(255,255,255,.10);
  border-radius:17px;
  background:rgba(255,255,255,.05);
  color:#fff;
  text-decoration:none;
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.portfolio-contact-identity>a:hover{transform:translateY(-2px);background:rgba(255,255,255,.08);border-color:rgba(104,226,255,.25)}
.portfolio-contact-identity i{grid-area:icon;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(95,225,255,.13);color:#72e6ff;font-size:1.1rem}
.portfolio-contact-identity span{grid-area:label;color:#87a8ba;font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}
.portfolio-contact-identity strong{grid-area:value;font-size:.9rem;overflow-wrap:anywhere}

.portfolio-whatsapp-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-content:center}
.portfolio-whatsapp-card{
  min-width:0;
  min-height:250px;
  display:flex;
  flex-direction:column;
  padding:1.55rem;
  border-radius:25px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(155deg,rgba(255,255,255,.095),rgba(255,255,255,.045));
  backdrop-filter:blur(9px);
  color:#fff;
  text-decoration:none;
  transition:transform .3s ease,border-color .3s ease,background .3s ease,box-shadow .3s ease;
}
.portfolio-whatsapp-card:hover{transform:translateY(-5px);color:#fff;border-color:rgba(95,226,255,.30);background:linear-gradient(155deg,rgba(255,255,255,.13),rgba(255,255,255,.06));box-shadow:0 18px 45px rgba(0,0,0,.18)}
.portfolio-contact-tag{display:block;color:#73e3ff;font-size:.6rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.8rem}
.portfolio-whatsapp-card h3{margin:0 0 .75rem;font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.75rem,2.4vw,2.35rem);line-height:1;color:#fff;letter-spacing:-.035em}
.portfolio-whatsapp-card p{margin:0;color:#adc3d2;font-size:.9rem;line-height:1.62}
.portfolio-whatsapp-card>strong{margin-top:auto;padding-top:1.2rem;color:#e9fbff;font-size:.76rem;letter-spacing:.02em;display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.portfolio-whatsapp-card>strong i{color:#74e5ff}
.portfolio-whatsapp-card-english{background:linear-gradient(155deg,rgba(64,197,233,.15),rgba(255,255,255,.04))}

.page-portfolio footer a{color:inherit}
.page-portfolio footer a:hover{color:#0a87c9}

@media (max-width:1199.98px){
  .portfolio-contact-shell{grid-template-columns:1fr;gap:2rem}
  .portfolio-contact-intro{max-width:760px}
  .portfolio-contact-identity{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:991.98px){
  .page-portfolio .portfolio-about-section{padding-top:4.5rem}
  .page-portfolio .professional-id-card{min-height:0}
  .page-portfolio .portfolio-profile-grid{grid-auto-rows:auto}
  .page-portfolio .professional-timeline{max-width:none;margin-left:0}
  .portfolio-contact-section{padding-bottom:72px}
  .portfolio-contact-shell{border-radius:30px;padding:2rem}
}

@media (max-width:767.98px){
  .page-portfolio .portfolio-about-section{padding-top:3.15rem;padding-bottom:3.8rem}
  .page-portfolio .professional-id-card{border-radius:24px;padding:1.2rem}
  .page-portfolio .professional-id-copy{margin:2.3rem 0 1.15rem}
  .page-portfolio .professional-id-copy h3{font-size:2.45rem}
  .page-portfolio .portfolio-name{font-size:clamp(2.6rem,11.2vw,3.65rem);line-height:.96}
  .page-portfolio .portfolio-professional-summary{font-size:.92rem;line-height:1.67}
  .page-portfolio .portfolio-profile-grid{gap:10px}
  .page-portfolio .portfolio-profile-grid .portfolio-card{padding:1.05rem;border-radius:19px}
  .page-portfolio .portfolio-timeline-section{padding:3.5rem 0}
  .page-portfolio .portfolio-focus-section{padding:3.5rem 0}
  .page-portfolio .portfolio-focus-card{min-height:220px;padding:1.25rem;border-radius:21px}

  .portfolio-contact-section{padding-bottom:58px}
  .portfolio-contact-shell{border-radius:24px;padding:1.25rem;gap:1.55rem}
  .portfolio-contact-intro h2{font-size:clamp(2.35rem,10.6vw,3.2rem);line-height:.97}
  .portfolio-contact-intro>p{font-size:.9rem;line-height:1.65}
  .portfolio-contact-identity{grid-template-columns:1fr;gap:.55rem;margin-top:1.25rem}
  .portfolio-contact-identity>div,.portfolio-contact-identity>a{padding:.78rem .85rem}
  .portfolio-whatsapp-grid{grid-template-columns:1fr;gap:10px}
  .portfolio-whatsapp-card{min-height:0;padding:1.2rem;border-radius:20px}
  .portfolio-whatsapp-card h3{font-size:clamp(1.75rem,8vw,2.2rem)}
  .portfolio-whatsapp-card p{font-size:.86rem;line-height:1.58}
  .portfolio-whatsapp-card>strong{padding-top:1rem}
  .page-portfolio .floating-cta{max-width:calc(100vw - 24px);height:44px;font-size:.62rem;padding-inline:.78rem}
}


/* === Portfólio: correção do excesso de espaço no bloco de identidade (desktop) === */
@media (min-width: 992px){
  .page-portfolio .portfolio-about-section .row{
    align-items:flex-start!important;
  }
  .page-portfolio .portfolio-about-section .col-lg-5,
  .page-portfolio .portfolio-about-section .col-lg-7{
    align-self:flex-start;
  }
  .page-portfolio .professional-id-card{
    height:auto!important;
    min-height:0!important;
    padding:1.7rem 1.7rem 1.55rem;
  }
  .page-portfolio .professional-id-copy{
    margin:2.7rem 0 1.45rem!important;
  }
  .page-portfolio .professional-id-copy h3{
    font-size:clamp(3rem,4.2vw,4.35rem);
    margin-bottom:.8rem;
  }
  .page-portfolio .professional-id-copy p{
    max-width:25rem;
    font-size:.92rem;
    line-height:1.62;
  }
  .page-portfolio .professional-credentials{
    gap:.65rem;
  }
  .page-portfolio .professional-credentials>div{
    padding:.82rem .9rem;
  }
  .page-portfolio .language-badge{
    margin-top:.7rem;
    padding:.78rem .9rem;
  }
  .page-portfolio .portfolio-name{
    font-size:clamp(3.45rem,5.25vw,5.65rem);
    line-height:.92;
  }
  .page-portfolio .portfolio-professional-summary{
    max-width:760px;
    font-size:1.02rem;
    line-height:1.72;
  }
}

@media (min-width: 1200px){
  .page-portfolio .professional-id-card{
    position:sticky;
    top:112px;
  }
}


/* Language switch */
.lang-switch{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:40px;padding:0 .8rem;border:1px solid rgba(255,255,255,.26);border-radius:999px;color:#fff!important;text-decoration:none;font-size:.72rem;font-weight:800;letter-spacing:.08em;background:rgba(255,255,255,.06);backdrop-filter:blur(10px);transition:.25s ease}
.lang-switch:hover{background:rgba(91,223,255,.14);border-color:rgba(91,223,255,.55);transform:translateY(-1px)}
@media(max-width:991.98px){.lang-switch{width:100%;height:44px;margin-left:0!important;margin-right:0!important;margin-bottom:.15rem;background:rgba(255,255,255,.08)}}


/* === Bilingual UX + English responsive polish === */
.lang-switch{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.55rem!important;
  min-width:0!important;
  width:auto!important;
  height:44px!important;
  padding:.35rem .72rem .35rem .62rem!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:999px!important;
  color:#fff!important;
  background:rgba(255,255,255,.06)!important;
  text-decoration:none!important;
  transition:.25s ease!important;
  white-space:nowrap!important;
}
.lang-switch:hover{
  background:rgba(91,223,255,.14)!important;
  border-color:rgba(91,223,255,.55)!important;
  transform:translateY(-1px);
}
.lang-switch>.bi-globe2{
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  border-radius:50%;
  background:rgba(91,223,255,.13);
  color:#69e5ff;
  font-size:.92rem;
  flex:0 0 27px;
}
.lang-switch-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  line-height:1.02;
}
.lang-switch-copy small{
  display:block;
  margin:0 0 2px;
  color:#8faabd;
  font-size:.47rem;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.lang-switch-copy strong{
  display:block;
  color:#fff;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.02em;
}
.lang-switch-arrow{
  color:#7e9aab;
  font-size:.68rem;
  margin-left:.05rem;
}

/* English should wrap at spaces instead of slicing words */
html[lang="en"] body{overflow-x:hidden}
html[lang="en"] h1,
html[lang="en"] h2,
html[lang="en"] h3{
  max-width:100%;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
html[lang="en"] p,
html[lang="en"] li,
html[lang="en"] a,
html[lang="en"] button,
html[lang="en"] span{
  word-break:normal;
  overflow-wrap:break-word;
}
html[lang="en"] .row>*,
html[lang="en"] .hero-grid>*,
html[lang="en"] .portfolio-profile-grid>*,
html[lang="en"] .portfolio-focus-grid>*,
html[lang="en"] .physio-meta-grid>*,
html[lang="en"] .physio-process-layout>*,
html[lang="en"] .pilates-process-layout>*{
  min-width:0;
}
html[lang="en"] .btn,
html[lang="en"] button{
  white-space:normal;
  line-height:1.2;
}
html[lang="en"] .portfolio-name{
  overflow-wrap:normal!important;
  word-break:normal!important;
  font-size:clamp(3rem,5.35vw,5.55rem);
}
html[lang="en"] .hero-title{
  max-width:820px;
  font-size:clamp(3rem,7.2vw,6.65rem);
  line-height:.92;
}
html[lang="en"] .lite-experience-content .display-title{
  font-size:clamp(2.45rem,4.15vw,4rem);
  max-width:780px;
}
html[lang="en"] .portfolio-professional-summary{
  max-width:980px;
}
html[lang="en"] .portfolio-timeline-section .timeline-item h3{
  font-size:clamp(1.55rem,2.5vw,2.3rem);
  line-height:1.08;
}
html[lang="en"] .physio-process-chapter h3{
  max-width:690px;
}
html[lang="en"] .portfolio-contact-intro h2{
  max-width:650px;
}

@media (max-width:991.98px){
  .lang-switch{
    width:100%!important;
    justify-content:flex-start!important;
    margin-left:0!important;
    margin-right:0!important;
    margin-bottom:.25rem!important;
    padding:.42rem .8rem!important;
    height:48px!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.08)!important;
  }
  .lang-switch-copy small{font-size:.5rem}
  .lang-switch-copy strong{font-size:.76rem}
  .lang-switch-arrow{margin-left:auto;font-size:.78rem}

  html[lang="en"] .hero-title{
    font-size:clamp(2.65rem,12vw,4rem);
    line-height:.96;
    letter-spacing:-.045em;
  }
  html[lang="en"] .display-title{
    font-size:clamp(2.05rem,9.5vw,3rem);
    line-height:1.02;
    letter-spacing:-.033em;
  }
  html[lang="en"] .lite-experience-content .display-title{
    font-size:clamp(2.05rem,9.4vw,2.9rem);
    line-height:1.03;
  }
  html[lang="en"] .portfolio-name{
    font-size:clamp(2.3rem,10.5vw,3.45rem)!important;
    line-height:.97!important;
    letter-spacing:-.04em!important;
  }
  html[lang="en"] .portfolio-timeline-intro .display-title{
    font-size:clamp(2.2rem,9.5vw,3rem);
  }
  html[lang="en"] .portfolio-timeline-section .timeline-item h3{
    font-size:clamp(1.55rem,7.5vw,2.05rem);
    line-height:1.08;
  }
  html[lang="en"] .portfolio-focus-card h3,
  html[lang="en"] .portfolio-whatsapp-card h3{
    font-size:clamp(1.55rem,7.1vw,2.05rem);
    line-height:1.06;
  }
  html[lang="en"] .portfolio-contact-intro h2{
    font-size:clamp(2.1rem,9.2vw,3rem);
    line-height:.99;
  }
  html[lang="en"] .physio-process-intro h2{
    font-size:clamp(2.35rem,9.9vw,3.35rem)!important;
    line-height:.98!important;
  }
  html[lang="en"] .physio-process-chapter h3{
    font-size:clamp(1.95rem,8.6vw,2.7rem)!important;
    line-height:1.02!important;
  }
  html[lang="en"] .pilates-process-intro h2{
    font-size:clamp(2.35rem,10vw,3.35rem);
    line-height:.98;
  }
  html[lang="en"] .process-chapter h3{
    font-size:clamp(1.95rem,8.6vw,2.7rem);
    line-height:1.02;
  }
}

@media (max-width:767.98px){
  html[lang="en"] .pilates-mobile-hero-copy h1,
  html[lang="en"] .fisio-mobile-hero-copy h1{
    font-size:clamp(1.98rem,9.6vw,2.7rem)!important;
    line-height:.98!important;
    letter-spacing:-.04em!important;
  }
  html[lang="en"] .pilates-mobile-hero-copy p,
  html[lang="en"] .fisio-mobile-hero-copy p{
    font-size:.82rem!important;
    line-height:1.52!important;
  }
  html[lang="en"] .portfolio-hero-content h1{
    font-size:clamp(2rem,9vw,2.85rem)!important;
    line-height:.98!important;
    max-width:78vw!important;
  }
  html[lang="en"] .portfolio-professional-summary,
  html[lang="en"] .lead-muted{
    font-size:.9rem;
    line-height:1.62;
  }
  html[lang="en"] .portfolio-card,
  html[lang="en"] .portfolio-focus-card,
  html[lang="en"] .portfolio-whatsapp-card{
    min-width:0;
    overflow:visible;
  }
  html[lang="en"] .portfolio-card h3,
  html[lang="en"] .portfolio-card p,
  html[lang="en"] .portfolio-card li,
  html[lang="en"] .portfolio-focus-card h3,
  html[lang="en"] .portfolio-focus-card p,
  html[lang="en"] .portfolio-whatsapp-card h3,
  html[lang="en"] .portfolio-whatsapp-card p{
    max-width:100%;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  html[lang="en"] .physio-meta-body h3{
    font-size:clamp(1.7rem,7.7vw,2.2rem)!important;
    line-height:1.04!important;
    overflow-wrap:normal!important;
  }
  html[lang="en"] .physio-meta-step{
    font-size:.57rem!important;
    letter-spacing:.07em!important;
  }
  html[lang="en"] .floating-cta{
    max-width:calc(100vw - 20px)!important;
    font-size:.58rem!important;
    padding-inline:.72rem!important;
  }
}

@media (max-width:390px){
  html[lang="en"] .hero-title{font-size:clamp(2.35rem,11.5vw,3.15rem)}
  html[lang="en"] .display-title{font-size:clamp(1.95rem,9.4vw,2.65rem)}
  html[lang="en"] .portfolio-name{font-size:clamp(2.12rem,10vw,2.9rem)!important}
  html[lang="en"] .pilates-mobile-hero-copy h1,
  html[lang="en"] .fisio-mobile-hero-copy h1{
    font-size:clamp(1.85rem,9.1vw,2.45rem)!important;
  }
}


/* Direct WhatsApp booking CTAs — same behavior as Portfolio */
.sea-nav a.btn.btn-sea[href*="wa.me"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.42rem;
  text-decoration:none;
}
.sea-nav a.btn.btn-sea[href*="wa.me"] .bi-whatsapp{
  font-size:1rem;
}
@media(max-width:991.98px){
  .sea-nav a.btn.btn-sea[href*="wa.me"]{
    width:100%;
    min-height:46px;
    margin-left:0!important;
  }
}
