@font-face{font-family:Playfair;src:url('/assets/fonts/PlayfairDisplay-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Playfair;src:url('/assets/fonts/PlayfairDisplay-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Oswald;src:url('/assets/fonts/Oswald-Light.woff2') format('woff2');font-weight:300;font-display:swap}
@font-face{font-family:Oswald;src:url('/assets/fonts/Oswald-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Lato;src:url('/assets/fonts/Lato-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Lato;src:url('/assets/fonts/Lato-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--navy:#0b2340;--blue:#4f7198;--pale:#f0f3f6;--line:#d9e2ec;--muted:#52677e;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:#fff;color:var(--navy);font:16px/1.8 Lato,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
img{display:block;max-width:100%;height:auto;object-fit:cover}
svg{display:block}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3{font-family:Playfair,Georgia,serif;font-weight:400;line-height:1.2}
button,a,input{touch-action:manipulation}
:focus-visible{outline:3px solid #789fc6;outline-offset:5px}
[hidden]{display:none!important}
.container{width:min(1120px,calc(100% - 80px));margin:auto}
.narrow{width:min(920px,calc(100% - 80px));margin:auto}
.hero-shell{position:relative;height:680px;background:var(--pale)}
.hero-media{position:absolute;inset:0;border-radius:0 0 30% 30%;overflow:hidden;background:#0b2340}
.hero-media>img{width:100%;height:100%;object-position:center 27%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,#06192fe8 0%,#06192f70 33%,#06192f05 76%),linear-gradient(180deg,#06192f50,transparent 22%)}
.hero-copy{position:absolute;bottom:-35px;left:30px;right:30px;text-align:center;color:#fff;z-index:2}
.hero-copy>p{font:300 26px/1.4 Oswald,Arial,sans-serif;margin-bottom:20px}
.hero-copy h1{font-size:clamp(55px,5.55vw,80px);line-height:1.13;letter-spacing:-1px;margin-bottom:40px}
.pill-button{display:inline-flex;justify-content:center;align-items:center;text-align:center;min-height:76px;padding:20px 50px;background:var(--blue);color:#fff;border-radius:45px;font:400 19px/1.5 Oswald,Arial,sans-serif;letter-spacing:.8px;transition:background .3s,transform .4s var(--ease),box-shadow .4s}
.pill-button:hover{background:#0b2340;transform:translateY(-3px);box-shadow:0 12px 25px #06192f24}
.feature-strip{background:var(--pale);display:grid;grid-template-columns:repeat(3,1fr);padding-top:75px}
.feature{position:relative;text-align:center;padding:50px 35px 35px;min-height:365px}
.feature:nth-child(2){background:#e7edf3}
.feature>svg{width:85px;height:85px;margin:0 auto 35px;color:var(--blue)}
.feature-label{display:block;font:400 12px/1.6 Oswald,sans-serif;letter-spacing:.7px;color:var(--blue);margin-bottom:14px}
.feature h2{font-size:29px;line-height:1.35;color:var(--blue)}
.feature-toggle{display:flex;align-items:center;justify-content:center;margin:28px auto 0;width:44px;height:44px;border:0;color:#7892ad;background:transparent;font:300 40px/1 Oswald,sans-serif}
.feature-toggle span{transition:transform .3s}
.feature-toggle[aria-expanded=true] span{transform:rotate(45deg)}
.feature-detail{max-width:340px;margin:15px auto 0;font-size:14px}
.feature-detail a{display:inline-flex;min-height:44px;align-items:center;color:var(--blue);font:400 16px Oswald,sans-serif}
.about-section{padding-top:115px;padding-bottom:60px;text-align:center}
.about-section h2{font-size:47px;line-height:1.24;color:var(--blue)}
.small-cross{display:block;color:#89a2bc;font-size:29px;font-weight:400;line-height:1;margin:35px auto}
.about-section p{font-size:15px;line-height:1.95;color:var(--muted);max-width:690px;margin:auto}
.focus-section{padding:30px 0 100px;text-align:center;overflow:hidden}
.focus-section>h2{color:var(--blue);font-size:26px;max-width:220px;margin:0 auto 55px}
.focus-diamonds{display:grid;grid-template-columns:repeat(3,110px);gap:40px;margin:0 auto;width:max-content;padding:30px;transform:rotate(-1deg)}
.focus-diamond{width:110px;height:110px;border:1px solid #d3dfe9;transform:rotate(45deg);display:grid;place-items:center;transition:background .3s,border-color .3s}
.focus-diamond>span{transform:rotate(-45deg);display:flex;flex-direction:column;align-items:center}
.focus-diamond svg{width:44px;height:44px;color:var(--blue);margin-bottom:8px}
.focus-diamond small{font:12px/1.2 Oswald,sans-serif;color:#607b96}
.focus-diamond:hover{background:#edf2f7;border-color:#91adc8}
.approach-heading{display:grid;grid-template-columns:.6fr 1.7fr;align-items:center;padding-top:40px;position:relative}
.approach-heading h2{font:300 37px/1.4 Oswald,sans-serif;border:1px solid #c5d6e7;min-height:360px;display:flex;flex-direction:column;justify-content:center;padding:35px 45px;margin-right:-25px;color:var(--blue);position:relative;z-index:1}
.approach-heading>img{width:100%;height:420px;object-position:center}
.approach-rows{padding:55px 0 65px}
.approach-row{display:grid;grid-template-columns:1fr 1.25fr;gap:120px;padding:45px 0;border-bottom:1px solid #e7edf2}
.approach-row:last-child{border:0}
.step-number{font:300 45px/1.2 Oswald,sans-serif;color:#5f7182;display:block;margin-bottom:17px}
.approach-row h3{font-size:29px;color:var(--blue)}
.approach-row h4{font:700 15px/1.8 Lato,sans-serif;margin-bottom:18px}
.approach-row p{font-size:14px;color:var(--muted);line-height:1.9}
.quiet-link{display:inline-flex;align-items:center;min-height:44px;font:400 14px/1.5 Oswald,sans-serif;color:var(--blue);margin-top:18px}
.quiet-link:hover{text-decoration:underline;text-underline-offset:5px}
.framed-title{position:relative;display:block;text-align:center;width:min(550px,calc(100% - 70px));margin:0 auto 40px;font:300 36px/1.35 Oswald,sans-serif;color:var(--blue);border-top:1px solid #d2e0ed;padding-top:22px}
.framed-title:before,.framed-title:after{content:'';position:absolute;top:-1px;height:50px;width:1px;background:#d2e0ed}
.framed-title:before{left:0}
.framed-title:after{right:0}
.question-window{overflow:hidden;background:#0b2340}
.question-track{display:flex;transition:transform .65s var(--ease)}
.question-card{flex:0 0 50%;padding:42px max(40px,calc((100vw - 1120px)/4));color:#fff;min-height:310px;background:#0b2340}
.question-card:nth-child(even){background:#244b75}
.question-card>span{font:70px/1 Playfair,serif;display:block;height:55px;color:#bccfe1}
.question-card h3{font:300 25px/1.5 Oswald,sans-serif;margin-bottom:18px}
.question-card p{font:300 18px/1.8 Oswald,sans-serif;color:#cfdeed;max-width:48ch}
.question-controls{display:flex;justify-content:center;align-items:center;background:#fff;width:max-content;margin:0 auto;transform:translateY(-1px);box-shadow:0 3px 10px #0b234010}
.question-controls button{border:0;background:#dce6f0;color:#355f8c;min-width:48px;height:44px;font-size:21px}
.question-controls button:hover{background:#c7d8e8}
.question-position{font:12px Lato,sans-serif;min-width:85px;text-align:center;color:#68829c}
.team-section{display:grid;grid-template-columns:1fr 1.05fr;gap:90px;padding:85px 0 95px}
.team-selector h2{font:300 42px/1.2 Oswald,sans-serif;color:var(--blue);margin-bottom:30px}
.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.team-person{padding:0;border:0;background:#edf2f6;color:var(--blue);position:relative;min-height:130px;overflow:hidden;opacity:.58;transition:opacity .3s,background .3s,box-shadow .3s}
.team-person:hover,.team-person[aria-selected=true]{opacity:1}
.team-person[aria-selected=true]{box-shadow:inset 0 -4px var(--blue);background:#dce7f1}
.team-person.has-photo img{position:absolute;inset:0;width:100%;height:100%;object-position:center 22%}
.person-label{position:relative;display:block;font:15px/1.3 Oswald,sans-serif;padding:12px 8px}
.person-initials{display:block;font:35px/1.2 Playfair,serif;padding-top:17px}
.team-person.has-photo .person-label{position:absolute;bottom:0;left:0;right:0;background:#0b2340ba;color:#fff;font-size:13px}
.team-panel{padding-top:6px}
.team-panel-image{width:190px;height:205px;background:#edf2f6;margin-bottom:25px;overflow:hidden}
.team-panel-image img{width:100%;height:100%;object-position:center 20%}
.team-panel-initials{height:100%;width:100%;display:grid;place-items:center;color:#6683a0;font:70px Playfair,serif}
.team-panel h3{font-size:41px;color:var(--blue);margin-bottom:12px}
.team-role{display:block;font:400 16px/1.4 Oswald,sans-serif;color:#7d92a6;margin-bottom:25px}
.team-panel p{font-size:14px;color:var(--muted);line-height:1.95}
.news-section{position:relative;padding:85px 0 60px;background:#c5d2dc;isolation:isolate;overflow:hidden}
.news-background{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-position:center}
.news-section:after{content:'';position:absolute;inset:0;background:#0b234044;z-index:-1}
.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;background:white}
.news-card{padding:30px 23px 25px;border-right:1px solid #e2e9ef;display:flex;flex-direction:column}
.news-card:last-child{border-right:0}
.news-card>span{font:400 9px/1.4 Oswald,sans-serif;color:#7995b0;letter-spacing:.7px}
.news-card h3{font-size:22px;line-height:1.35;margin:18px 0 22px;min-height:90px}
.news-card p{font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:25px}
.news-card>a{font:14px Oswald,sans-serif;color:var(--blue);margin-top:auto;min-height:44px;display:flex;align-items:center}
.news-section .pill-button{display:flex;width:max-content;max-width:100%;margin:35px auto 0;min-height:60px;font-size:16px}
.practice-section{padding-top:95px;background:var(--pale)}
.practice-layout{display:grid;grid-template-columns:1fr 1.03fr;gap:75px;align-items:start}
.practice-selection h2{font:300 42px/1.2 Oswald,sans-serif;color:var(--blue);margin-bottom:15px}
.practice-selection>p{font-size:14px;color:var(--muted);max-width:39ch;line-height:1.7;margin-bottom:35px}
.practice-tabs{display:flex;flex-direction:column}
.practice-tabs button{background:#fafbfc;border:0;border-bottom:1px solid #dce4ed;position:relative;color:var(--blue);padding:17px 24px;min-height:66px;text-align:left;display:flex;align-items:center;justify-content:space-between;font:400 16px/1.4 Oswald,sans-serif;transition:background .3s,color .3s}
.practice-tabs button>i{font:300 25px/1 Oswald,sans-serif;opacity:0}
.practice-tabs button[aria-selected=true]{background:#e0eaf4;color:#0b2340}
.practice-tabs button[aria-selected=true]>i{position:absolute;right:-22px;top:0;bottom:0;width:44px;background:#244b75;color:white;display:grid;place-items:center;opacity:1;z-index:2}
.practice-tabs button:hover{background:#e6edf4}
.practice-panel{min-height:650px;padding:55px 45px;background:#183b66;color:white;align-self:stretch}
.practice-panel h3{font-size:30px;line-height:1.3;margin-bottom:28px}
.practice-panel p,.practice-panel li{font-size:14px;line-height:1.95;color:#e2e9f1}
.practice-panel ul{padding-left:18px;margin:25px 0}
.practice-panel li{padding-left:3px;margin-bottom:8px}
.practice-panel .practice-note{font-size:13px;color:#b9cce0}
.practice-panel>a{display:inline-flex;align-items:center;min-height:44px;margin-top:28px;color:#b9d0e9;font:16px Oswald,sans-serif}
.contact-section{padding:90px 0 80px;text-align:center}
.section-label{font:400 13px/1.5 Oswald,sans-serif;color:var(--blue);letter-spacing:1px}
.contact-section h2{font-size:48px;color:var(--blue);margin-top:15px}
.contact-copy{display:grid;grid-template-columns:1fr 1fr;gap:60px;text-align:left;font-size:14px;color:var(--muted);margin-bottom:35px}
.contact-section .pill-button{min-height:62px;font-size:23px;letter-spacing:.4px}
.location-section{display:grid;grid-template-columns:370px 1fr;min-height:420px}
.location-card{background:#edf1f5;padding:42px 45px}
.location-card h2{font:400 22px/1.5 Oswald,sans-serif;color:var(--blue);margin-bottom:20px}
.location-card address{font-size:13px;font-style:normal;color:var(--muted)}
.location-card dl{margin:22px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.location-card dl>div:last-child{grid-column:1/-1}
.location-card dt{font:400 11px/1.4 Oswald,sans-serif;color:#6d88a3}
.location-card dd{margin:4px 0 0;font-size:13px;color:var(--blue)}
.location-map{position:relative;background:#dce5ed;min-height:400px}
.location-map iframe{width:100%;height:100%;position:absolute;inset:0;border:0;filter:grayscale(.75)}
.location-map>a{position:absolute;bottom:20px;right:25px;background:#fff;color:var(--blue);padding:12px 20px;font:14px Oswald,sans-serif;box-shadow:0 4px 20px #0b234015}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:50px 40px}
.site-footer .brand{font-size:22px}
.site-footer p{font-size:10px;color:#6c8094;margin-top:20px}
.site-footer nav{display:flex;gap:22px;font-size:12px;color:var(--muted)}
.back-top{width:45px;height:45px;border:1px solid #d1dce7;border-radius:50%;display:grid;place-items:center;font-size:25px}
.back-top:hover{background:#edf2f7}
.motion-ready [data-reveal]{transition:opacity .9s var(--ease),transform .9s var(--ease)}
.motion-ready .reveal-pending{opacity:0;transform:translateY(24px)}
@media(max-width:1200px){.hero-copy h1{font-size:70px}.approach-row{gap:70px}.approach-heading h2{padding:25px;font-size:33px}.team-section{gap:60px}.practice-layout{gap:55px}.question-card{padding-inline:50px}.site-footer nav{gap:15px}}
@media(max-width:950px) and (min-width:701px){.hero-shell{height:650px}.hero-copy h1{font-size:61px}.feature{padding-inline:20px}.feature h2{font-size:24px}.container,.narrow{width:calc(100% - 60px)}.about-section h2{font-size:39px}.approach-heading{grid-template-columns:.85fr 1.4fr}.approach-heading h2{font-size:29px}.approach-row{gap:45px}.team-section{gap:40px}.news-grid{grid-template-columns:repeat(2,1fr)}.news-card{border-bottom:1px solid #e2e9ef}.news-card h3{min-height:0}.practice-layout{gap:35px}.practice-panel{padding:40px 30px}.contact-section h2{font-size:42px}.site-footer{flex-wrap:wrap}.location-section{grid-template-columns:310px 1fr}.location-card{padding:35px 30px}}
@media(max-width:700px){html{scroll-padding-top:100px}.container,.narrow{width:calc(100% - 40px)}.hero-shell{height:auto;background:#fff;padding-top:240px}.hero-media{height:240px;border-radius:0 0 30% 30%;bottom:auto}.hero-media>img{object-position:center 25%}.hero-shade{background:linear-gradient(0deg,#06192fba,transparent 68%)}.hero-copy{position:static;padding:35px 20px 48px;color:var(--navy)}.hero-copy>p{position:absolute;top:163px;left:25px;right:25px;margin:0;color:#fff;font-size:20px;line-height:1.4;z-index:1}.hero-copy h1{font-size:43px;line-height:1.24;letter-spacing:-.4px;margin-bottom:30px}.pill-button{min-height:58px;padding:16px 30px;font-size:16px}.feature-strip{grid-template-columns:1fr;padding-top:0}.feature{min-height:0;padding:46px 30px 24px}.feature>svg{width:75px;height:75px;margin-bottom:27px}.feature-label{font-size:12px}.feature h2{font-size:28px;line-height:1.4}.feature-toggle{margin-top:20px}.feature-detail{margin-top:6px;padding-bottom:18px}.about-section{padding-top:65px;padding-bottom:45px}.about-section h2{font-size:34px;line-height:1.3}.about-section h2 br{display:none}.small-cross{margin:25px auto}.about-section p{font-size:14px;line-height:1.9}.focus-section{padding:10px 0 65px}.focus-section>h2{font-size:25px;margin-bottom:36px}.focus-diamonds{grid-template-columns:repeat(3,74px);gap:24px;padding:20px}.focus-diamond{width:74px;height:74px}.focus-diamond svg{width:30px;height:30px;margin-bottom:5px}.focus-diamond small{font-size:9px}.approach-heading{display:block;padding-top:0}.approach-heading h2{min-height:0;padding:25px 28px;margin:0;font-size:30px;line-height:1.3;border-bottom:0;display:block}.approach-heading h2 br{display:none}.approach-heading h2 br:after{content:' '}.approach-heading>img{height:245px}.approach-rows{padding:10px 0 45px}.approach-row{grid-template-columns:1fr;gap:20px;padding:32px 0}.step-number{font-size:36px;margin-bottom:12px}.approach-row h3{font-size:27px}.approach-row h4{font-size:14px;margin-bottom:12px}.approach-row p{font-size:14px}.quiet-link{font-size:14px}.framed-title{font-size:27px;margin-bottom:30px;padding-top:18px;width:calc(100% - 60px)}.question-card{flex-basis:100%;padding:30px 30px 38px;min-height:360px}.question-card h3{font-size:23px}.question-card p{font-size:18px;line-height:1.8}.question-card>span{font-size:60px;height:42px}.team-section{display:flex;flex-direction:column;gap:35px;padding:55px 0}.team-selector h2{font-size:33px;margin-bottom:25px}.team-selector h2 br{display:none}.team-grid{grid-template-columns:repeat(4,1fr);gap:7px}.team-person{min-height:100px}.person-initials{font-size:26px;padding-top:14px}.person-label{font-size:10px;padding:10px 4px}.team-person.has-photo .person-label{font-size:9px}.team-panel-image{width:120px;height:140px;margin-bottom:20px}.team-panel h3{font-size:35px}.team-role{font-size:15px;margin-bottom:20px}.team-panel p{font-size:14px}.news-section{padding:45px 0}.news-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;background:transparent;gap:14px;padding-bottom:12px;overscroll-behavior-x:contain}.news-card{flex:0 0 85%;background:white;scroll-snap-align:start;padding:28px 24px;min-height:335px;border:0}.news-card h3{font-size:25px;min-height:0}.news-card>span{font-size:10px}.news-card p{font-size:14px}.news-card>a{font-size:15px}.news-section .pill-button{font-size:15px;min-height:56px;margin-top:25px}.practice-section{padding-top:50px}.practice-layout{grid-template-columns:1fr;gap:28px}.practice-selection h2{font-size:34px}.practice-selection>p{font-size:14px;max-width:none;margin-bottom:25px}.practice-tabs button{padding:14px 20px;font-size:16px;min-height:60px}.practice-tabs button[aria-selected=true]>i{right:0;width:48px}.practice-panel{padding:35px 28px;min-height:0}.practice-panel h3{font-size:28px;margin-bottom:22px}.practice-panel p,.practice-panel li{font-size:14px}.practice-panel ul{margin-block:22px}.practice-panel>a{font-size:16px;margin-top:20px}.contact-section{padding:60px 0 50px}.contact-section h2{font-size:36px}.contact-copy{grid-template-columns:1fr;gap:20px;font-size:14px}.contact-section .pill-button{font-size:21px;min-height:58px}.location-section{grid-template-columns:1fr}.location-card{padding:35px 25px}.location-card h2{font-size:23px}.location-card address{font-size:14px}.location-card dl{grid-template-columns:1fr 1fr;max-width:360px}.location-card dd{font-size:13px}.location-map{min-height:300px}.site-footer{padding:35px 20px;gap:28px;flex-wrap:wrap}.site-footer .brand{font-size:19px}.site-footer nav{order:2;width:100%;flex-wrap:wrap;gap:10px 20px;font-size:11px}.site-footer p{font-size:9px;max-width:230px}.back-top{margin-left:auto;width:40px;height:40px}.motion-ready .reveal-pending{transform:translateY(18px)}}
@media(max-width:360px){.hero-copy h1{font-size:38px}.hero-copy>p{font-size:18px}.pill-button{font-size:14px;padding-inline:25px}.focus-diamonds{grid-template-columns:repeat(3,66px);gap:24px}.focus-diamond{width:66px;height:66px}.about-section h2{font-size:30px}.team-grid{gap:5px}.person-label{font-size:9px}.practice-panel{padding:30px 22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal-pending{opacity:1;transform:none}}
@media(max-width:700px){.question-section,.news-section{overflow-x:hidden}.news-grid{overscroll-behavior-x:contain}}
@media(min-width:1201px){.hero-copy{left:6%;right:50%;text-align:left}.hero-copy h1{font-size:clamp(52px,4.5vw,68px);line-height:1.18}.hero-copy>p{font-size:clamp(20px,1.8vw,25px)}}
@media(max-width:1200px) and (min-width:701px){.hero-copy{left:5%;right:42%;text-align:left}.hero-copy h1{font-size:clamp(38px,5vw,58px);line-height:1.2}.hero-copy>p{font-size:clamp(18px,2.1vw,24px)}}
.hero-copy .pill-button{display:flex;width:max-content;margin:0 auto}
.team-person{opacity:1;cursor:default}
.team-person:hover,.team-person[aria-selected=true]{opacity:1;box-shadow:none;background:#edf2f6}
.team-panel{text-align:center}
.team-panel-image{width:190px;height:190px;border-radius:50%;margin:0 auto 28px;overflow:hidden}
.team-panel-image img{object-position:center 16%}
.team-panel p{max-width:620px;margin-inline:auto}
.team-panel .quiet-link{justify-content:center}
.whatsapp-link,.whatsapp-link:hover{background:var(--navy);border-color:var(--navy);color:#fff}
.whatsapp-link svg{width:24px;height:24px;fill:currentColor}
.whatsapp-link:hover{background:#173757}
@media(min-width:1201px){.hero-copy{left:6%;right:6%;text-align:left}.hero-copy h1{max-width:52%}.hero-copy .pill-button{min-height:62px;padding:14px 36px;font-size:16px}}
@media(max-width:1200px) and (min-width:701px){.hero-copy{left:5%;right:5%;text-align:left}.hero-copy h1{max-width:50%;font-size:clamp(34px,5vw,58px)}.hero-copy .pill-button{min-height:58px;padding:12px 30px;font-size:15px}}
@media(max-width:700px){.hero-copy .pill-button{min-height:54px;padding:13px 24px;font-size:15px}.team-panel{align-self:stretch}}
.team-panel{align-self:center}
@media(min-width:701px){.hero-copy{top:50%;bottom:auto;transform:translateY(-50%)}}
@media(max-width:700px){.team-panel{align-self:stretch}}
.hero-cta{position:absolute;z-index:4;left:50%;bottom:-35px;display:flex;width:max-content;min-height:62px;padding:14px 36px;font-size:16px;transform:translateX(-50%)}
.hero-cta:hover{transform:translate(-50%,-3px)}
@media(max-width:700px){.hero-copy{padding:35px 20px 12px}.hero-cta,.hero-cta:hover{position:relative;left:auto;bottom:auto;display:flex;width:max-content;min-height:54px;margin:0 auto 34px;padding:13px 24px;font-size:15px;transform:none}}
.team-person{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.focus-section{padding:18px 0 75px}
.focus-section>h2{max-width:none;font-size:32px;margin-bottom:48px}
.focus-diamonds{grid-template-columns:repeat(3,150px);gap:34px;margin:0 auto;padding:22px;transform:none}
.focus-diamond{width:150px;height:150px}
.focus-diamond svg{width:56px;height:56px;margin-bottom:8px}
.focus-diamond small{font-size:13px}
@media(max-width:700px){.focus-section{padding:10px 0 55px}.focus-section>h2{font-size:27px;margin-bottom:35px}.focus-diamonds{grid-template-columns:repeat(3,82px);gap:22px;padding:14px}.focus-diamond{width:82px;height:82px}.focus-diamond svg{width:34px;height:34px;margin-bottom:5px}.focus-diamond small{font-size:9px}}
.feature-detail{animation:featureReveal .45s var(--ease) both}
.feature.is-expanded .feature-detail{animation:featureReveal .5s var(--ease) both}
@keyframes featureReveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.home-contact-form{max-width:820px;margin:48px auto 0;padding:32px;background:#f0f3f6;text-align:left;border:1px solid var(--line)}
.home-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 22px}
.home-contact-form label{display:grid;gap:8px;font:400 13px/1.5 Lato,Arial,sans-serif;color:var(--navy)}
.home-contact-form label>span{font-weight:700}
.home-contact-form input,.home-contact-form select,.home-contact-form textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid #b7c7d8;border-radius:4px;background:#fff;color:var(--navy);font:400 15px/1.5 Lato,Arial,sans-serif}
.home-contact-form textarea{min-height:120px;resize:vertical}
.home-contact-message{margin-top:20px}
.home-contact-form>.pill-button{display:flex;margin:24px auto 0;min-height:56px;padding:14px 30px;border:0;cursor:pointer;font-size:15px}
.back-top.whatsapp-link{position:fixed;right:26px;bottom:24px;z-index:90;width:72px;height:72px;margin:0;padding:0;border:5px solid #7ca0c5;border-radius:50%;display:grid;place-items:center;background:#fff;color:#fff;box-shadow:none}
.back-top.whatsapp-link svg{width:44px;height:44px;padding:10px;border-radius:50%;background:#0b2340;fill:currentColor}
@media(max-width:700px){.home-contact-form{margin-top:32px;padding:22px 18px}.home-contact-fields{grid-template-columns:1fr;gap:16px}.home-contact-form>.pill-button{width:100%;font-size:14px}.back-top.whatsapp-link{right:16px;bottom:16px;width:64px;height:64px}.back-top.whatsapp-link svg{width:38px;height:38px;padding:9px}}
/* Mobile type scale: calmer, consistent heading sizes on the home page. */
@media(max-width:700px){.hero-copy>p{font-size:18px}.hero-copy h1{font-size:34px;line-height:1.2;margin-bottom:26px}.feature h2{font-size:24px}.about-section h2{font-size:26px;line-height:1.3}.focus-section>h2{font-size:24px}.focus-diamonds{grid-template-columns:repeat(3,64px);gap:20px;padding:22px}.focus-diamond{width:64px;height:64px}.focus-diamond svg{width:26px;height:26px;margin-bottom:4px}.approach-heading h2,.framed-title{font-size:24px}.team-selector h2,.practice-selection h2{font-size:26px}.approach-row h3{font-size:22px}.step-number{font-size:30px}.question-card h3{font-size:20px}.question-card p{font-size:16px;line-height:1.7}.question-card{min-height:300px}.team-panel h3{font-size:26px}.news-card h3{font-size:21px}.practice-panel h3{font-size:23px}.contact-section h2{font-size:28px}.location-card h2{font-size:20px}}
.hero-shade { background:transparent!important; }
.hero-copy h1 { text-shadow:0 3px 22px rgba(4,18,34,.72); }
.hero-copy>p { text-shadow:0 2px 12px rgba(4,18,34,.8); }
