:root{--navy:#062d5d;--dark:#041f43;--teal:#00a994;--mint:#dcf5ef;--cream:#f5f3ed;--muted:#657684;--line:#dce4e8;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#10243b;font-family:var(--sans);line-height:1.6}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}header{height:84px;position:absolute;inset:0 0 auto;z-index:10}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.logo{width:145px;height:55px;overflow:hidden;display:flex;align-items:center}.logo img,.flogo img{transform:scale(1.9)}nav{display:flex;gap:36px;align-items:center;font-size:14px;font-weight:600;color:var(--navy)}.call{background:var(--navy);color:white;padding:11px 20px;border-radius:30px}.menu{display:none}.hero{min-height:720px;padding-top:84px;background:linear-gradient(120deg,#fff 0%,#fafcfb 58%,#e4f5f1);position:relative;overflow:hidden}.blob{position:absolute;width:260px;height:260px;border-radius:50%;background:#d9f5ee;right:-150px;top:80px}.hero-grid{min-height:635px;display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.tag{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--teal);margin:0 0 20px}.tag:before{content:"";display:inline-block;width:28px;height:1px;background:var(--teal);vertical-align:middle;margin-right:10px}.hero h1,h2{font:600 62px/1.08 var(--serif);letter-spacing:-2px;color:var(--navy);margin:0}em{color:var(--teal);font-style:italic}.lead{font-size:18px;color:var(--muted);max-width:570px;margin:27px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;padding:14px 21px;border-radius:4px;font-size:14px;font-weight:700;transition:.2s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--teal);color:#fff;box-shadow:0 10px 25px #00a99430}.ghost{background:#fff;border:1px solid var(--line);color:var(--navy)}.note{display:flex;align-items:center;gap:12px;margin-top:30px}.note>b{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--teal)}.note span{display:flex;flex-direction:column}.note strong{font-size:13px;color:var(--navy)}.note small{font-size:11px;color:var(--muted)}.visual{height:500px;display:grid;place-items:center;position:relative}.round{width:430px;height:430px;border-radius:50%;background:#fff;box-shadow:0 30px 70px #0a40501a;display:grid;place-items:center;position:relative}.round:before,.round:after{content:"";position:absolute;border:1px solid #00a99455;border-radius:50%;inset:-18px}.round:after{inset:-42px;border-color:#062d5d1b}.round img{width:94%}.float{position:absolute;padding:11px 16px;background:#fffffff0;box-shadow:0 12px 35px #062d5d20;border-radius:7px;display:flex;align-items:center;gap:10px;color:var(--teal);font-size:22px}.float span{display:flex;flex-direction:column}.float small{font-size:9px;color:var(--muted)}.float strong{font-size:12px;color:var(--navy)}.one{left:-15px;top:95px}.two{right:-20px;bottom:95px}.trust{border-top:1px solid #dce8e5;background:#ffffffaa}.trust .wrap{height:70px;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:1.5px;color:#78888e;font-weight:700}.trust i{width:4px;height:4px;background:var(--teal);border-radius:50%}.section{padding:105px 0}.heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px}.section h2{font-size:47px}.heading>p{max-width:390px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.card{min-height:355px;border:1px solid var(--line);padding:28px 23px;position:relative;transition:.25s}.card:hover{transform:translateY(-7px);box-shadow:0 22px 50px #082e5518;border-color:transparent}.card>small{position:absolute;right:20px;top:18px;color:#bdcbd1}.card>b{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--teal);font-size:23px;margin:18px 0 34px}.card h3{font:600 22px var(--serif);color:var(--navy);margin:0 0 12px}.card p{font-size:14px;color:var(--muted)}.card a{position:absolute;bottom:22px;left:23px;right:23px;color:var(--navy);font-size:12px;font-weight:700}.about{background:var(--navy);color:#fff}.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}.orbit{width:385px;height:385px;border-radius:50%;border:1px solid #ffffff35;display:grid;place-items:center;text-align:center;position:relative}.orbit:before,.orbit:after{content:"";position:absolute;border-radius:50%;inset:28px;border:1px solid #00a99460}.orbit:after{inset:-30px;border-color:#00a99445}.orbit span,.orbit small{display:block;letter-spacing:4px;color:#b8d1d7}.orbit strong{display:block;font:600 84px/1 var(--serif)}.orbit small{font-size:9px}.about h2{color:#fff}.about-copy>p:not(.tag){color:#bfd0da;margin:24px 0 32px}.values{border-top:1px solid #ffffff22}.values>div{display:flex;gap:24px;padding:17px 0;border-bottom:1px solid #ffffff22}.values b{font-size:11px;color:var(--teal)}.values span{display:flex;flex-direction:column}.values strong{font-family:var(--serif)}.values small{color:#8facba}.contact{background:var(--cream)}.panel{display:grid;grid-template-columns:.9fr 1.1fr;background:#fff;box-shadow:0 22px 60px #062d5d10}.contact-copy{padding:58px}.contact-copy>p:not(.tag){color:var(--muted);margin:20px 0 28px}.details{padding:25px 46px;background:#fafcfb}.details>a,.details>div{min-height:82px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:40px 1fr 18px;align-items:center;gap:14px}.details>div{border:0}.details b{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--teal)}.details span{display:flex;flex-direction:column}.details small{font-size:9px;letter-spacing:1px;color:var(--muted)}.details strong{font-size:14px;color:var(--navy)}.details i{color:var(--teal)}footer{padding:58px 0 20px;background:var(--dark);color:#fff}.foot{display:grid;grid-template-columns:1.5fr 1fr 1fr .7fr;gap:40px}.flogo{width:160px}.flogo p{white-space:nowrap;margin-top:22px}.foot>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start}.foot small{color:#61d2c3;letter-spacing:1.5px;font-size:9px;margin-bottom:10px}.foot p,.foot a{font-size:12px;color:#b3c5d0;margin:0}.copy{border-top:1px solid #ffffff18;margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;font-size:10px;color:#7690a0}.mobile-call{display:none}.reveal{opacity:0;transform:translateY(20px);transition:.7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){header{position:fixed;height:70px;background:#ffffffed;box-shadow:0 2px 15px #062d5d10}.logo{width:120px}.menu{display:block;border:0;background:none;font-size:24px;color:var(--navy)}nav{display:none;position:fixed;top:70px;left:0;right:0;background:#fff;padding:18px 24px 28px;flex-direction:column;gap:5px;box-shadow:0 15px 30px #062d5d18}nav.open{display:flex}nav a{width:100%;padding:10px}.hero{padding-top:70px}.hero-grid{grid-template-columns:1fr;text-align:center;padding:60px 0}.hero-copy{display:flex;flex-direction:column;align-items:center}.visual{height:360px}.round{width:300px;height:300px}.one{left:3%;top:35px}.two{right:3%;bottom:30px}.cards{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:1fr 1.2fr;gap:40px}.orbit{width:300px;height:300px}.panel{grid-template-columns:1fr}.foot{grid-template-columns:1fr 1fr 1fr}.foot>div:last-child{display:none}}
@media(max-width:620px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:44px;letter-spacing:-1px}.lead{font-size:16px}.actions,.btn{width:100%;justify-content:center}.visual{height:315px}.round{width:245px;height:245px}.float{padding:8px 11px}.trust{display:none}.section{padding:72px 0}.heading{display:block}.section h2{font-size:37px;letter-spacing:-1px}.heading>p{margin-top:18px}.cards{grid-template-columns:1fr}.card{min-height:310px}.about-grid{grid-template-columns:1fr}.orbit{width:255px;height:255px;margin:auto}.orbit strong{font-size:62px}.contact-copy{padding:36px 26px}.details{padding:10px 22px}.details>a,.details>div{grid-template-columns:37px 1fr 15px;gap:11px}.details strong{overflow-wrap:anywhere}.foot{grid-template-columns:1fr 1fr}.flogo{grid-column:1/-1}.foot>div:last-child{display:none}.copy span{display:none}.mobile-call{display:grid;place-items:center;position:fixed;right:18px;bottom:18px;width:52px;height:52px;border-radius:50%;background:var(--teal);color:white;z-index:20;box-shadow:0 8px 25px #00a99455}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
.booking{background:#f7faf9}.booking-shell{display:grid;grid-template-columns:1fr 290px;background:#fff;border:1px solid var(--line);box-shadow:0 20px 60px #062d5d0d}.booking form{padding:42px}.steps{display:flex;gap:8px;margin-bottom:30px}.steps span{font-size:10px;font-weight:700;letter-spacing:.5px;padding:7px 11px;border-radius:20px;background:#eef3f3;color:#829099}.steps .active{background:var(--mint);color:var(--teal)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:var(--navy);letter-spacing:.3px}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:4px;background:#fff;padding:12px 13px;font:14px var(--sans);color:#24394c;outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #00a99414}.form-grid .full{grid-column:1/-1}.privacy{flex-direction:row!important;align-items:flex-start!important;font-weight:400!important;color:var(--muted)!important}.privacy input{width:auto;margin-top:4px}.submit-btn{border:0;margin-top:24px;cursor:pointer}.form-message{font-size:13px;color:var(--teal);font-weight:600;margin-bottom:0}.booking aside{padding:42px 30px;background:var(--navy);color:#fff}.aside-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#ffffff18;color:#61d7c7;font-size:23px}.booking aside h3{font:600 24px var(--serif);margin:24px 0 12px}.booking aside p{color:#bcd0da;font-size:14px}.booking aside strong{color:#fff}.booking aside hr{border:0;border-top:1px solid #ffffff20;margin:25px 0}.booking aside .small{font-size:12px}.booking aside a{display:block;margin-top:35px;padding-top:24px;border-top:1px solid #ffffff20;color:#9cded5;font-size:12px}.booking aside a strong{color:#fff}.admin-link{opacity:.65}
@media(max-width:760px){.booking-shell{grid-template-columns:1fr}.booking form{padding:28px 22px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.steps{overflow:auto}.booking aside{padding:30px 24px}}

/* Aviva360 motion layer */
html{scroll-behavior:smooth}.page-ready .hero h1,.page-ready .service-hero h1{animation:softRise .75s ease both}.page-ready .hero p,.page-ready .service-hero h2,.page-ready .service-hero p{animation:softRise .85s ease both}.btn,.card,.info-card,.service-deep-grid article,.doc-panel{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.btn:hover{transform:translateY(-2px)}.card:hover,.service-deep-grid article:hover,.doc-panel:hover{transform:translateY(-5px);box-shadow:0 20px 45px #062d5d14}.reveal-item{opacity:0;transform:translateY(24px);transition:opacity .65s ease var(--reveal-delay,0ms),transform .65s ease var(--reveal-delay,0ms)}.reveal-item.is-visible{opacity:1;transform:none}@keyframes softRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes slowFloat{0%,100%{transform:translate3d(0,0,0) rotate(0)}50%{transform:translate3d(0,-14px,0) rotate(4deg)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal-item{opacity:1;transform:none}}
