:root{
  --bg:#080c0b;
  --bg-2:#0b1110;
  --panel:#101715;
  --panel-2:#0e1513;
  --green:#00C16C;
  --green-bright:#00C16C;
  --mint:#00C16C;
  --text:#f4f4ee;
  --muted:#9aa49f;
  --muted-2:#6e7973;
  --line:rgba(244,244,238,.11);
  --line-soft:rgba(244,244,238,.065);
  --max:1320px;
  --ease:cubic-bezier(.2,.72,.2,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
img{display:block;max-width:100%}
.skip-link{position:fixed;left:18px;top:-100px;z-index:1000;background:var(--text);color:var(--bg);padding:12px 16px;font-size:13px}.skip-link:focus{top:18px}
.section-pad{width:min(var(--max),calc(100% - 80px));margin-inline:auto}
.eyebrow{display:flex;align-items:center;gap:13px;margin:0;color:#b7c0bb;text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:700}.eyebrow span{display:block;width:34px;height:1px;background:var(--mint);box-shadow:0 0 18px rgba(0,193,108,.5)}

/* HEADER */
.site-header{position:fixed;z-index:100;top:0;left:50%;transform:translateX(-50%);width:min(var(--max),calc(100% - 80px));height:108px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line-soft);background:linear-gradient(180deg,rgba(8,12,11,.78),rgba(8,12,11,.35));backdrop-filter:blur(18px);transition:height .45s var(--ease),background .45s var(--ease),border-color .45s var(--ease)}
.site-header.scrolled{height:86px;background:rgba(8,12,11,.88);border-color:var(--line)}
.brand{width:70px;height:70px;display:grid;place-items:center;transition:transform .35s var(--ease)}.brand:hover{transform:scale(1.05)}.brand img{width:62px;height:62px;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:52px}.main-nav a{position:relative;font-size:14px;letter-spacing:.015em;color:#d6dbd7;padding:12px 0}.main-nav a:after{content:"";position:absolute;left:0;bottom:2px;width:100%;height:1px;background:var(--mint);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}.main-nav a:hover:after{transform:scaleX(1);transform-origin:left}.main-nav a:hover{color:#fff}
.header-socials{justify-self:end;display:flex;align-items:center;gap:12px}.header-socials a{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:#cbd2ce;transition:transform .35s var(--ease),background .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease)}.header-socials a:hover{transform:translateY(-3px);background:var(--green);border-color:rgba(0,193,108,.35);color:#fff}.header-socials svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}.header-socials .fill{fill:currentColor;stroke:none}
.menu-toggle,.mobile-nav{display:none}

/* HERO */
.hero{min-height:100svh;position:relative;display:grid;align-items:center;padding-top:150px;padding-bottom:70px;overflow:hidden}
.hero:before{content:"";position:absolute;width:70vw;height:70vw;max-width:950px;max-height:950px;right:-18%;top:4%;border-radius:50%;background:radial-gradient(circle,rgba(0,193,108,.5) 0%,rgba(0,193,108,.16) 35%,transparent 70%);filter:blur(10px);pointer-events:none}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,var(--bg));pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(480px,.88fr);align-items:center;gap:35px;min-height:720px}
.hero-copy{position:relative;z-index:4;padding-bottom:15px}.hero-copy .eyebrow{margin-bottom:38px}
.hero h1{font-size:clamp(82px,9.6vw,156px);line-height:.79;letter-spacing:-.085em;margin:0 0 48px;font-weight:400}.hero h1 span{display:block;font-size:.27em;line-height:1.1;letter-spacing:-.035em;color:#d9dedb;margin:0 0 19px 7px}.hero h1 strong{display:block;font-weight:650;color:#fff}.hero h1 em{display:block;font-style:normal;font-size:.36em;line-height:1.05;letter-spacing:-.045em;color:#9aa59f;margin:18px 0 0 10px}
.hero-meta{display:grid;grid-template-columns:190px 1px minmax(190px,310px);gap:27px;align-items:end}.experience{display:flex;flex-direction:column;gap:7px}.experience span{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#89948e}.experience b{font-size:74px;line-height:.88;font-weight:500;letter-spacing:-.075em}.experience b span{font-size:30px;color:var(--mint);vertical-align:top}.hero-line{height:66px;background:var(--line)}.hero-meta>p{margin:0;color:#89938d;font-size:13px;line-height:1.8;max-width:300px}
.hero-visual{height:700px;position:relative;z-index:3;display:flex;align-items:center;justify-content:center;transform:translateZ(0)}
.hero-stage{position:absolute;width:min(90%,560px);height:650px;right:1%;border:1px solid rgba(0,193,108,.14);border-radius:34px 34px 120px 34px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012) 48%,rgba(0,193,108,.18));overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 45px 100px rgba(0,0,0,.35)}
.hero-stage:before{content:"";position:absolute;width:520px;height:520px;right:-170px;top:-120px;border-radius:50%;background:radial-gradient(circle,rgba(0,193,108,.18),transparent 65%);filter:blur(10px)}
.hero-stage:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:45%;background:linear-gradient(transparent,rgba(4,10,8,.65));pointer-events:none}
.hero-portrait{position:absolute;z-index:2;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:25px 0 0}.hero-portrait img{height:100%;width:auto;max-width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 35px 35px rgba(0,0,0,.42));transform:translateX(1%)}
.hero-word{position:absolute;z-index:1;left:8%;top:13%;font-size:clamp(90px,12vw,190px);line-height:.72;letter-spacing:-.1em;font-weight:700;color:rgba(255,255,255,.045);user-select:none}.hero-word span{display:block;color:rgba(0,193,108,.08)}
.hero-orbit{position:absolute;border:1px solid rgba(0,193,108,.15);border-radius:50%;z-index:0}.orbit-one{width:650px;height:280px;transform:rotate(-28deg)}.orbit-two{width:500px;height:210px;transform:rotate(25deg);border-color:rgba(255,255,255,.07)}
.hero-tag{position:absolute;z-index:5;background:rgba(9,15,13,.78);border:1px solid var(--line);backdrop-filter:blur(16px);box-shadow:0 20px 50px rgba(0,0,0,.3)}.hero-tag.top{right:-5%;top:13%;padding:14px 18px;display:flex;align-items:center;gap:13px;transform:rotate(3deg)}.hero-tag.top span{font-size:10px;color:var(--mint);letter-spacing:.16em}.hero-tag.top b{font-size:11px;font-weight:600;letter-spacing:.08em}.hero-tag.bottom{left:-4%;bottom:12%;padding:15px 18px;display:flex;align-items:center;gap:11px;transform:rotate(-3deg)}.hero-tag.bottom i{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 16px var(--mint)}.hero-tag.bottom b{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.scroll-mark{position:absolute;bottom:8px;right:-1%;display:flex;align-items:center;gap:11px;transform:rotate(90deg) translateX(50%);transform-origin:right center;color:#66716b;text-transform:uppercase;font-size:9px;letter-spacing:.22em}.scroll-mark i{display:block;width:55px;height:1px;background:var(--line)}

/* IDEAS */
.ideas{position:relative;padding-top:120px;padding-bottom:130px}.section-intro{display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:end;gap:40px}.section-intro h2{font-size:clamp(55px,6.3vw,92px);line-height:.9;letter-spacing:-.075em;font-weight:400;margin:0}.section-intro h2 span{color:var(--mint)}.intro-copy{font-size:13px;color:#858f89;max-width:270px;line-height:1.75;margin:0 0 4px}
.ideas-stage{height:590px;position:relative;margin-top:55px}.ideas-ring{position:absolute;left:50%;top:50%;width:570px;height:330px;transform:translate(-50%,-50%) rotate(-17deg);border:1px solid rgba(0,193,108,.15);border-radius:50%;box-shadow:0 0 110px rgba(0,193,108,.13)}.ideas-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:176px;height:176px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#00C16C,#0a1210 70%);border:1px solid rgba(0,193,108,.3);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 0 80px rgba(0,193,108,.4)}.ideas-center span{font-size:30px;font-weight:700;letter-spacing:-.08em}.ideas-center b{font-size:8px;letter-spacing:.2em;line-height:1.6;color:#87928c;margin-top:8px}.idea-item{position:absolute;width:135px;text-align:center}.idea-item img{width:98px;height:98px;margin:auto;border-radius:26px;box-shadow:0 22px 55px rgba(0,0,0,.28);transition:transform .5s var(--ease),border-radius .5s var(--ease)}.idea-item:hover img{transform:translateY(-8px) rotate(3deg);border-radius:32px}.idea-item span{display:block;margin-top:12px;font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:#8f9993}.idea-1{left:6%;top:17%}.idea-2{left:27%;top:0}.idea-3{right:28%;top:0}.idea-4{right:5%;top:19%}.idea-5{left:20%;bottom:5%}.idea-6{right:19%;bottom:2%}

/* ABOUT */
.about{position:relative;padding-top:125px;padding-bottom:140px;background:linear-gradient(180deg,transparent,rgba(0,193,108,.065),transparent)}.about-number{position:absolute;top:35px;right:0;font-size:170px;line-height:1;color:rgba(255,255,255,.025);font-weight:700;letter-spacing:-.1em}.about-layout{display:grid;grid-template-columns:150px minmax(400px,1fr) 320px;gap:70px;align-items:center}.vertical-label{margin-top:100px;font-size:9px;letter-spacing:.2em;color:#5f6b65;writing-mode:vertical-rl;transform:rotate(180deg)}.about-copy h2{font-size:clamp(55px,6.5vw,96px);line-height:.88;letter-spacing:-.075em;font-weight:400;margin:0 0 34px}.about-copy h2 span{color:var(--mint)}.about-copy .lead,.more-content p{font-size:16px;line-height:1.9;color:#aab3ad;max-width:740px;margin:0}.more-content{overflow:hidden;transition:max-height .7s var(--ease),opacity .45s ease,margin .7s var(--ease);max-height:0;opacity:0}.more-content.is-open{max-height:500px;opacity:1;margin-top:24px}.more-content p+p{margin-top:16px}.read-more{margin-top:32px;background:none;border:0;border-bottom:1px solid rgba(255,255,255,.25);padding:0 0 11px;display:flex;gap:25px;align-items:center;text-transform:uppercase;letter-spacing:.16em;font-size:10px;cursor:pointer}.read-more i{font-style:normal;font-size:16px;color:var(--mint);transition:transform .35s var(--ease)}.read-more:hover i{transform:translate(5px,-5px)}.read-more[aria-expanded=true] i{transform:rotate(45deg)}.about-art{height:380px;position:relative}.about-art-circle{position:absolute;width:285px;height:285px;border:1px solid rgba(0,193,108,.2);border-radius:50%;right:0;top:15px;display:grid;place-items:center;background:radial-gradient(circle,rgba(0,193,108,.45),transparent 65%)}.about-art-circle:before{content:"";position:absolute;width:205px;height:205px;border-radius:50%;border:1px dashed rgba(255,255,255,.11);animation:spin 22s linear infinite}.about-art-circle span{font-size:56px;letter-spacing:-.08em;font-weight:700}.about-art-word{position:absolute;left:0;bottom:20px;font-size:12px;line-height:1.1;letter-spacing:.18em;color:#69746e}.about-art-line{position:absolute;right:72px;bottom:0;width:1px;height:105px;background:linear-gradient(var(--mint),transparent)}

/* OFFER */
.offer{padding-top:130px;padding-bottom:140px}.offer-heading{display:grid;grid-template-columns:1fr 1.7fr 1fr;gap:30px;align-items:end;margin-bottom:55px}.offer-heading h2{font-size:clamp(58px,7vw,108px);line-height:.84;letter-spacing:-.08em;font-weight:400;margin:0}.offer-heading h2 span{color:var(--mint)}.offer-heading>p:last-child{font-size:13px;color:#858f89;line-height:1.75;max-width:270px;margin:0}
.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.service-card{min-height:455px;position:relative;overflow:hidden;padding:26px;background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.018) 50%,rgba(0,193,108,.1));border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .55s var(--ease),border-color .45s ease,background .45s ease}.service-card:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 35%,rgba(0,193,108,.07),transparent 65%);transform:translateX(-100%);transition:transform .8s var(--ease)}.service-card:hover{transform:translateY(-9px);border-color:rgba(0,193,108,.3);background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018) 48%,rgba(0,193,108,.2))}.service-card:hover:before{transform:translateX(100%)}.service-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center}.service-index{font-size:12px;color:var(--mint);letter-spacing:.12em}.service-tag{font-size:9px;letter-spacing:.18em;color:#69736e}.service-main{position:relative;z-index:2;margin-top:auto;padding:70px 0 42px}.service-main h3{font-size:clamp(39px,3.7vw,57px);line-height:.88;letter-spacing:-.065em;font-weight:400;margin:0 0 24px}.service-main h3 span{color:#8b9891}.service-main p{font-size:13px;color:#89938d;line-height:1.8;max-width:330px;margin:0}.service-cta{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px;text-transform:uppercase;font-size:10px;letter-spacing:.16em}.service-cta span{font-size:18px;color:var(--mint);transition:transform .3s}.service-cta:hover span{transform:translate(5px,-5px)}.service-cta.disabled{color:#59635e;cursor:default}.service-cta.disabled span{color:#59635e}.service-glow{position:absolute;width:230px;height:230px;border-radius:50%;background:rgba(0,193,108,.2);filter:blur(75px);right:-120px;bottom:-130px;opacity:.45;transition:opacity .5s}.service-card:hover .service-glow{opacity:1}

/* TRUST — deliberately follows the supplied reference composition */
.trust{position:relative;padding-top:115px;padding-bottom:125px;overflow:hidden}.trust:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(0,193,108,.2),transparent 48%);pointer-events:none}.trust-heading{position:relative;z-index:2;text-align:center;max-width:720px;margin:0 auto 52px}.trust-heading h2{font-size:clamp(46px,6vw,82px);line-height:.9;letter-spacing:-.075em;font-weight:500;margin:24px 0 20px}.trust-heading h2 span{color:#9ca7a0}.trust-heading p:not(.eyebrow){font-size:14px;line-height:1.8;color:#939d97;max-width:600px;margin:0 auto}.trust-heading .eyebrow{justify-content:center}
.trust-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(210px,1fr) minmax(330px,1.35fr) minmax(210px,1fr);gap:45px;align-items:center}.trust-side{height:430px;position:relative}.trust-frame{position:absolute;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#0d1311;box-shadow:0 35px 80px rgba(0,0,0,.35)}.trust-frame img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.05);transition:transform .8s var(--ease),filter .6s ease}.trust-side:hover img{transform:scale(1.05);filter:saturate(1) contrast(1.06)}.trust-left{width:74%;height:330px;right:0;top:0;border-radius:30px 30px 70px 30px;transform:rotate(-5deg)}.trust-right{width:74%;height:330px;left:0;bottom:0;border-radius:30px 30px 30px 70px;transform:rotate(5deg)}.trust-side:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:rgba(0,193,108,.6);filter:blur(50px);z-index:-1}.trust-side.left:after{right:0;bottom:25px}.trust-side.right:after{left:0;top:25px}.trust-center{text-align:center;position:relative;padding:20px 0}.trust-emblem{width:96px;height:96px;margin:0 auto 25px;border:1px solid rgba(0,193,108,.3);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#00C16C,#0b1210 72%);box-shadow:0 0 55px rgba(0,193,108,.35)}.trust-emblem span{font-size:24px;font-weight:700;letter-spacing:-.08em}.trust-center h3{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:#8d9891;margin:0 0 22px}.trust-center p{font-size:15px;line-height:1.9;color:#b0b7b2;max-width:470px;margin:0 auto}.trust-rule{width:70px;height:1px;background:var(--mint);margin:30px auto 0;opacity:.65}

/* CONTACT */
.contact{min-height:760px;position:relative;display:grid;align-items:center;overflow:hidden;border-top:1px solid var(--line-soft);padding-top:100px;padding-bottom:110px}.contact:before{content:"";position:absolute;width:620px;height:620px;border-radius:50%;background:rgba(0,193,108,.34);filter:blur(115px);right:-140px;bottom:-250px}.contact-bg{position:absolute;right:3%;bottom:-8%;width:min(45vw,560px);height:650px;opacity:.22;mask-image:linear-gradient(to top,#000 58%,transparent);-webkit-mask-image:linear-gradient(to top,#000 58%,transparent);pointer-events:none}.contact-bg img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:grayscale(1) contrast(1.1)}.contact-content{width:100%;position:relative;z-index:2}.contact h2{font-size:16px;font-weight:400;color:#a1aba5;margin:27px 0 22px}.contact-big{font-size:clamp(70px,10vw,156px);line-height:.81;letter-spacing:-.09em;font-weight:400;margin:0}.contact-big span{color:var(--mint)}.email-orbit{position:absolute;right:11%;top:47%;width:164px;height:164px;border-radius:50%;border:1px solid rgba(0,193,108,.4);display:grid;place-items:center;background:rgba(10,18,15,.58);backdrop-filter:blur(10px);transition:transform .5s var(--ease),background .4s}.email-orbit:before{content:"";position:absolute;inset:-12px;border:1px dashed rgba(0,193,108,.2);border-radius:50%;animation:spin 18s linear infinite}.email-orbit:hover{transform:scale(1.08);background:rgba(0,193,108,.72)}.email-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:#0a100e}.email-icon svg{width:21px;fill:none;stroke:currentColor;stroke-width:1.4}.email-label{position:absolute;bottom:30px;font-size:9px;letter-spacing:.19em}.email-arrow{position:absolute;top:25px;right:25px;color:var(--mint);font-size:16px}

/* FOOTER */
.site-footer{width:min(var(--max),calc(100% - 80px));min-height:220px;margin:auto;border-top:1px solid rgba(255,255,255,.13);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:40px;padding:48px 0}.footer-left{font-size:14px;color:#8c9690;letter-spacing:.01em}.footer-nav{display:flex;align-items:center;gap:42px}.footer-nav a,.footer-socials a{font-size:13px;letter-spacing:.03em;color:#c8d0cb;transition:color .25s ease}.footer-nav a:hover,.footer-socials a:hover{color:#fff}.footer-socials{justify-self:end;display:flex;gap:30px}.footer-socials a{font-size:12px;text-transform:uppercase;letter-spacing:.12em}

.cursor-glow{position:fixed;width:260px;height:260px;border-radius:50%;pointer-events:none;z-index:40;background:radial-gradient(circle,rgba(0,193,108,.075),transparent 68%);transform:translate(-50%,-50%);mix-blend-mode:screen;opacity:0;transition:opacity .3s}
.reveal{opacity:0;transform:translateY(32px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal-delay{transition-delay:.12s}.reveal.is-visible{opacity:1;transform:none}
@keyframes spin{to{transform:rotate(360deg)}}

/* LEGAL */
.legal-header{position:relative;left:auto;top:auto;transform:none;margin:0 auto}.back-home{justify-self:end;font-size:11px;color:#9da6a1;text-transform:uppercase;letter-spacing:.12em}.legal-main{width:min(1000px,calc(100% - 80px));margin:0 auto;padding:125px 0 130px}.legal-main h1{font-size:clamp(62px,9vw,122px);line-height:.85;letter-spacing:-.08em;font-weight:400;margin:35px 0}.legal-lead{font-size:17px;line-height:1.8;color:#9da6a1;max-width:780px}.legal-grid{margin-top:75px;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.legal-grid section{background:var(--bg);padding:35px;min-height:250px}.legal-grid section>span{color:var(--mint);font-size:10px}.legal-grid h2{font-size:26px;font-weight:400;letter-spacing:-.04em}.legal-grid p{font-size:12px;color:#8d9690;line-height:1.8}.legal-grid a{color:var(--mint)}.legal-updated{margin-top:35px;color:#606963;font-size:10px;letter-spacing:.08em}

@media(max-width:1000px){
  .section-pad,.site-header,.site-footer{width:calc(100% - 48px)}
  .site-header{grid-template-columns:1fr auto;height:92px}.site-header.scrolled{height:78px}.main-nav,.header-socials{display:none}.menu-toggle{display:flex;justify-self:end;width:48px;height:48px;border:1px solid var(--line);background:rgba(9,14,12,.65);align-items:center;justify-content:center;flex-direction:column;gap:7px;cursor:pointer}.menu-toggle span{width:19px;height:1px;background:#dce1dd;transition:.3s}
  .mobile-nav{position:fixed;z-index:90;top:92px;left:24px;right:24px;background:rgba(10,15,13,.97);border:1px solid var(--line);padding:24px;transform:translateY(-15px);opacity:0;pointer-events:none;transition:.35s var(--ease);backdrop-filter:blur(18px)}.mobile-nav.is-open{transform:none;opacity:1;pointer-events:auto}.mobile-nav nav{display:flex;flex-direction:column}.mobile-nav a{padding:17px 0;border-bottom:1px solid var(--line);font-size:21px;letter-spacing:-.03em}
  .hero{padding-top:125px}.hero-grid{grid-template-columns:1fr;min-height:auto;gap:20px}.hero-copy{padding-top:30px}.hero h1{font-size:clamp(82px,16vw,138px);margin-bottom:44px}.hero-visual{height:650px;margin-top:-10px}.hero-stage{right:50%;transform:translateX(50%);height:610px;width:min(88vw,590px)}.hero-tag.top{right:0}.hero-tag.bottom{left:0}.scroll-mark{display:none}
  .section-intro{grid-template-columns:1fr;gap:20px}.intro-copy{max-width:430px}.ideas{padding-top:105px;padding-bottom:115px}.ideas-stage{height:560px}.ideas-ring{width:500px}.about{padding-top:105px;padding-bottom:115px}.about-layout{grid-template-columns:1fr;gap:38px}.about-aside{display:flex;justify-content:space-between}.vertical-label{writing-mode:horizontal-tb;transform:none;margin:0}.about-art{height:270px}.about-art-circle{width:220px;height:220px;right:5%}.offer{padding-top:110px;padding-bottom:120px}.offer-heading{grid-template-columns:1fr;gap:18px;margin-bottom:45px}.service-list{grid-template-columns:1fr}.service-card{min-height:430px}.trust{padding-top:100px;padding-bottom:110px}.trust-layout{grid-template-columns:1fr;gap:28px}.trust-side{height:260px}.trust-left,.trust-right{width:48%;height:250px}.trust-left{right:8%;top:0}.trust-right{left:8%;bottom:0}.trust-center{order:-1}.contact{min-height:700px}.contact-bg{width:70vw;right:-8%;opacity:.2}.contact-big{font-size:clamp(58px,12vw,105px)}.email-orbit{right:5%;top:59%;width:140px;height:140px}
  .site-footer{grid-template-columns:1fr;justify-items:start;padding:44px 0;gap:28px;min-height:270px}.footer-socials{justify-self:start}.footer-nav{gap:28px;flex-wrap:wrap}.legal-grid{grid-template-columns:1fr}
}

@media(max-width:600px){
  html{scroll-padding-top:95px}.section-pad,.site-header,.site-footer{width:calc(100% - 30px)}.site-header{height:82px}.site-header.scrolled{height:72px}.brand{width:58px;height:58px}.brand img{width:52px;height:52px}.menu-toggle{width:44px;height:44px}.mobile-nav{top:82px;left:15px;right:15px}
  .hero{padding-top:105px;padding-bottom:50px}.hero-grid{gap:0}.hero-copy .eyebrow{margin-bottom:30px}.hero h1{font-size:clamp(67px,19vw,100px);margin-bottom:38px}.hero h1 span{font-size:.31em}.hero h1 em{font-size:.38em}.hero-meta{grid-template-columns:1fr;gap:18px}.hero-line{display:none}.experience b{font-size:66px}.hero-meta>p{max-width:320px}.hero-visual{height:535px;margin-top:0}.hero-stage{height:500px;width:92vw;border-radius:28px 28px 90px 28px}.hero-portrait{padding-top:15px}.hero-word{font-size:95px;left:8%;top:15%}.hero-tag.top{right:2%;top:10%;padding:11px 13px}.hero-tag.bottom{left:2%;bottom:8%;padding:12px 14px}.hero-tag.top b,.hero-tag.bottom b{font-size:9px}.hero-orbit{opacity:.7}.orbit-one{width:430px;height:180px}.orbit-two{width:340px;height:145px}
  .ideas{padding-top:80px;padding-bottom:90px}.section-intro h2{font-size:clamp(48px,14vw,72px)}.ideas-stage{height:510px;margin-top:38px}.ideas-ring{width:310px;height:390px;transform:translate(-50%,-50%) rotate(25deg)}.ideas-center{width:132px;height:132px}.ideas-center span{font-size:23px}.idea-item{width:92px}.idea-item img{width:70px;height:70px;border-radius:18px}.idea-item span{font-size:8px;margin-top:8px}.idea-1{left:0;top:16%}.idea-2{left:34%;top:0}.idea-3{right:0;top:16%}.idea-4{right:0;bottom:13%;top:auto}.idea-5{left:34%;bottom:0}.idea-6{left:0;bottom:13%;right:auto}
  .about{padding-top:85px;padding-bottom:95px}.about-number{font-size:100px;top:35px}.about-copy h2{font-size:clamp(50px,14vw,72px)}.about-copy .lead,.more-content p{font-size:14px}.about-art{display:none}
  .offer{padding-top:85px;padding-bottom:95px}.offer-heading h2{font-size:clamp(52px,15vw,78px)}.service-card{min-height:400px;padding:22px}.service-main{padding-top:60px}.service-main h3{font-size:40px}
  .trust{padding-top:80px;padding-bottom:90px}.trust-heading{margin-bottom:34px}.trust-heading h2{font-size:clamp(43px,12vw,65px)}.trust-layout{gap:18px}.trust-side{height:210px}.trust-left,.trust-right{height:195px;width:54%}.trust-left{right:3%}.trust-right{left:3%}.trust-emblem{width:78px;height:78px;margin-bottom:20px}.trust-emblem span{font-size:20px}.trust-center h3{font-size:10px;letter-spacing:.22em}.trust-center p{font-size:13px}.trust-rule{margin-top:22px}
  .contact{min-height:620px;padding-top:80px;padding-bottom:85px}.contact-bg{width:100%;right:-30%;bottom:-6%}.contact-big{font-size:clamp(54px,14vw,88px)}.email-orbit{position:relative;right:auto;top:auto;margin:48px 0 0 2px;width:132px;height:132px}.email-icon{width:42px;height:42px}.email-label{bottom:24px}.email-arrow{top:21px;right:21px}
  .site-footer{padding:42px 0;min-height:250px}.footer-left{font-size:13px}.footer-nav{gap:20px}.footer-nav a,.footer-socials a{font-size:12px}.footer-socials{gap:22px}.legal-main{width:calc(100% - 30px);padding-top:95px}.legal-main h1{font-size:62px}.legal-grid section{padding:26px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.about-art-circle:before,.email-orbit:before{animation:none}.service-card,.email-orbit,.idea-item img{transition:none}}


/* =========================================================
   FINAL ART-DIRECTION REFINEMENTS
   ========================================================= */

/* Header: stronger brand presence without making it tall. */
.site-header{
  height:116px;
}
.site-header.scrolled{
  height:92px;
}
.brand{
  width:124px;
  height:64px;
}
.brand img{
  width:118px;
  height:auto;
  object-fit:contain;
}
.main-nav{
  gap:58px;
}
.main-nav a{
  font-size:16px;
  font-weight:500;
  padding:14px 0;
}
.header-socials{
  gap:14px;
}
.header-socials a{
  width:50px;
  height:50px;
}
.header-socials svg{
  width:23px;
  height:23px;
}

/* Keep the page flowing: the hero remains expansive, subsequent sections do not. */
.ideas,
.about,
.offer,
.trust{
  padding-top:74px;
  padding-bottom:76px;
}
.contact{
  padding-top:78px;
  padding-bottom:82px;
}

/* Section 5: editorial composition inspired by the supplied reference. */
.trust{
  min-height:620px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  overflow:clip;
  isolation:isolate;
}
.trust:before{
  background:
    radial-gradient(circle at 50% 48%,rgba(0,193,108,.22),transparent 34%),
    radial-gradient(circle at 8% 50%,rgba(0,193,108,.11),transparent 24%),
    radial-gradient(circle at 92% 50%,rgba(0,193,108,.11),transparent 24%);
}
.trust-heading{
  max-width:860px;
  margin:0 auto 28px;
}
.trust-heading .eyebrow{
  justify-content:center;
  margin-bottom:22px;
}
.trust-people{
  display:flex;
  justify-content:center;
  align-items:center;
  margin:0 auto 24px;
  height:58px;
}
.trust-dot{
  width:58px;
  height:58px;
  margin-left:-7px;
  border:3px solid var(--bg);
  border-radius:50%;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 35% 28%,rgba(0,193,108,.45),transparent 35%),
    linear-gradient(145deg,#00C16C,#0d1714);
  color:#f4f4ee;
  font-size:16px;
  font-weight:700;
  letter-spacing:-.04em;
  box-shadow:0 12px 28px rgba(0,0,0,.28);
}
.trust-dot:first-child{margin-left:0}
.trust-heading h2{
  margin:0 0 18px;
  font-size:clamp(52px,5.5vw,86px);
  line-height:.88;
}
.trust-heading p:not(.eyebrow){
  font-size:16px;
  line-height:1.7;
  max-width:620px;
}

.trust-composition{
  width:100%;
  max-width:1120px;
  min-height:300px;
  margin:0 auto;
  position:relative;
  display:grid;
  grid-template-columns:250px 1fr 250px;
  align-items:center;
  gap:44px;
}
.trust-art{
  position:relative;
  height:300px;
  display:flex;
  align-items:center;
}
.trust-art:before{
  content:"";
  position:absolute;
  width:210px;
  height:210px;
  border-radius:50%;
  background:rgba(0,193,108,.5);
  filter:blur(60px);
  opacity:.5;
}
.trust-art img{
  position:relative;
  z-index:1;
  width:220px;
  height:auto;
  max-height:290px;
  object-fit:contain;
  object-position:center;
  filter:brightness(.74) saturate(.5) contrast(1.05);
  opacity:.92;
  transition:transform .8s var(--ease),filter .6s ease,opacity .6s ease;
}
.trust-art-left{
  justify-content:flex-start;
}
.trust-art-left img{
  transform:rotate(-4deg);
}
.trust-art-left:hover img{
  transform:rotate(-2deg) translateY(-8px) scale(1.03);
  filter:brightness(.88) saturate(.65) contrast(1.05);
  opacity:1;
}
.trust-art-right{
  justify-content:flex-end;
}
.trust-art-right img{
  transform:rotate(4deg);
}
.trust-art-right:hover img{
  transform:rotate(2deg) translateY(-8px) scale(1.03);
  filter:brightness(.88) saturate(.65) contrast(1.05);
  opacity:1;
}
.trust-core{
  min-height:220px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:20px;
  position:relative;
}
.trust-core:before{
  content:"";
  position:absolute;
  inset:10% 12%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,193,108,.2),transparent 68%);
  filter:blur(12px);
}
.trust-core-line{
  display:block;
  width:56px;
  height:1px;
  background:rgba(0,193,108,.5);
}
.trust-core-mark{
  position:relative;
  z-index:1;
  width:94px;
  height:94px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:1px solid rgba(0,193,108,.28);
  background:radial-gradient(circle at 35% 25%,#00C16C,#09110f 72%);
  box-shadow:0 0 60px rgba(0,193,108,.35),inset 0 1px 0 rgba(255,255,255,.08);
  font-size:21px;
  font-weight:700;
  letter-spacing:-.06em;
}

/* Footer: substantial final chapter, not a small utility strip. */
.site-footer{
  min-height:300px;
  padding:72px 0;
}
.footer-left{
  font-size:15px;
}
.footer-nav{
  gap:46px;
}
.footer-nav a,
.footer-socials a{
  font-size:14px;
}
.footer-socials{
  gap:34px;
}
.footer-socials a{
  letter-spacing:.14em;
}

/* Medium screens */
@media (max-width:1000px){
  .site-header{
    height:100px;
  }
  .site-header.scrolled{
    height:86px;
  }
  .brand{
    width:112px;
    height:62px;
  }
  .brand img{
    width:108px;
  }
  .menu-toggle{
    width:52px;
    height:52px;
  }

  .ideas,
  .about,
  .offer,
  .trust{
    padding-top:64px;
    padding-bottom:70px;
  }

  .trust{
    min-height:560px;
  }
  .trust-composition{
    max-width:760px;
    grid-template-columns:170px 1fr 170px;
    gap:24px;
    min-height:250px;
  }
  .trust-art{
    height:250px;
  }
  .trust-art img{
    width:165px;
    max-height:245px;
  }
  .trust-art:before{
    width:150px;
    height:150px;
  }

  .site-footer{
    min-height:280px;
    padding:62px 0;
  }
}

/* Mobile: keep total section-to-section breathing room around 100px max. */
@media (max-width:600px){
  .site-header{
    height:86px;
  }
  .site-header.scrolled{
    height:76px;
  }
  .brand{
    width:102px;
    height:56px;
  }
  .brand img{
    width:98px;
  }
  .menu-toggle{
    width:48px;
    height:48px;
  }
  .mobile-nav{
    top:86px;
  }

  .ideas,
  .about,
  .offer,
  .trust{
    padding-top:48px;
    padding-bottom:52px;
  }
  .contact{
    padding-top:50px;
    padding-bottom:54px;
  }

  .trust{
    min-height:0;
  }
  .trust-heading{
    margin-bottom:20px;
  }
  .trust-heading .eyebrow{
    margin-bottom:16px;
  }
  .trust-people{
    height:46px;
    margin-bottom:18px;
  }
  .trust-dot{
    width:46px;
    height:46px;
    font-size:13px;
  }
  .trust-heading h2{
    font-size:clamp(42px,12vw,64px);
    margin-bottom:14px;
  }
  .trust-heading p:not(.eyebrow){
    font-size:13px;
    max-width:330px;
  }
  .trust-composition{
    max-width:100%;
    min-height:260px;
    grid-template-columns:92px 1fr 92px;
    gap:8px;
    margin-top:4px;
  }
  .trust-art{
    height:235px;
  }
  .trust-art img{
    width:92px;
    max-height:230px;
  }
  .trust-art-left img{
    transform:rotate(-3deg);
  }
  .trust-art-right img{
    transform:rotate(3deg);
  }
  .trust-art:before{
    width:90px;
    height:90px;
    filter:blur(35px);
  }
  .trust-core{
    min-height:200px;
    gap:14px;
  }
  .trust-core-line{
    width:34px;
  }
  .trust-core-mark{
    width:76px;
    height:76px;
    font-size:17px;
  }

  .site-footer{
    min-height:320px;
    padding:60px 0;
    gap:30px;
  }
  .footer-left{
    font-size:14px;
  }
  .footer-nav{
    gap:22px;
  }
  .footer-nav a,
  .footer-socials a{
    font-size:13px;
  }
}

/* =========================================================
   POLISH PASS — BALANCE, ICONS & SERVICE CARD ART DIRECTION
   ========================================================= */

/* Header: logo now carries the same visual weight as the 16px nav labels. */
.site-header{height:108px}
.site-header.scrolled{height:86px}
.brand{width:88px;height:48px}
.brand img{width:78px;height:auto}
.main-nav{gap:52px}
.main-nav a{font-size:16px;font-weight:500}
.header-socials{gap:12px}
.header-socials a{width:48px;height:48px}

/* Offer cards: bespoke editorial tiles instead of generic rectangles. */
.service-list{gap:16px;align-items:stretch}
.service-card{
  min-height:500px;
  padding:30px;
  border-radius:32px 32px 76px 32px;
  border-color:rgba(244,244,238,.12);
  background:
    radial-gradient(circle at 82% 15%,rgba(0,193,108,.075),transparent 27%),
    linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012) 48%,rgba(0,193,108,.12));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 24px 70px rgba(0,0,0,.16);
  transition:transform .6s var(--ease),border-color .45s ease,box-shadow .6s var(--ease),background .45s ease;
}
.service-card:nth-child(2){
  border-radius:76px 32px 32px 32px;
  background:
    radial-gradient(circle at 18% 15%,rgba(0,193,108,.065),transparent 27%),
    linear-gradient(145deg,rgba(0,193,108,.15),rgba(255,255,255,.018) 52%,rgba(255,255,255,.045));
}
.service-card:nth-child(3){
  border-radius:32px 76px 32px 32px;
  background:
    radial-gradient(circle at 82% 78%,rgba(0,193,108,.08),transparent 28%),
    linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012) 48%,rgba(0,193,108,.18));
}
.service-card:after{
  content:attr(data-index);
  position:absolute;
  right:24px;
  bottom:-22px;
  font-size:150px;
  line-height:1;
  letter-spacing:-.11em;
  font-weight:700;
  color:rgba(0,193,108,.028);
  pointer-events:none;
  transition:transform .7s var(--ease),color .5s ease;
}
.service-card:hover{
  transform:translateY(-12px);
  border-color:rgba(0,193,108,.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 34px 90px rgba(0,0,0,.28),0 0 45px rgba(0,193,108,.1);
}
.service-card:nth-child(2):hover{transform:translateY(-12px) rotate(.25deg)}
.service-card:nth-child(3):hover{transform:translateY(-12px) rotate(-.25deg)}
.service-card:hover:after{transform:translate(-8px,-8px);color:rgba(0,193,108,.05)}
.service-top{padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.07)}
.service-index{font-size:13px;font-weight:600;letter-spacing:.16em}
.service-tag{padding:7px 10px;border:1px solid rgba(0,193,108,.14);border-radius:999px;color:#89958e;background:rgba(0,193,108,.16)}
.service-main{padding:76px 0 48px}
.service-main h3{font-size:clamp(40px,3.8vw,58px);line-height:.9;margin-bottom:25px;max-width:440px}
.service-main p{font-size:13px;line-height:1.85;max-width:340px;color:#929c96}
.service-cta{
  min-height:54px;
  border:1px solid rgba(244,244,238,.09);
  border-radius:999px;
  padding:0 17px 0 20px;
  background:rgba(255,255,255,.025);
  transition:background .4s ease,border-color .4s ease,transform .4s var(--ease),color .3s ease;
}
.service-cta:hover{background:rgba(0,193,108,.08);border-color:rgba(0,193,108,.28);transform:translateY(-2px)}
.service-cta span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(0,193,108,.12);font-size:16px}
.service-cta.disabled{opacity:.65;background:rgba(255,255,255,.018)}
.service-cta.disabled span{background:rgba(255,255,255,.035)}
.service-glow{width:280px;height:280px;right:-150px;bottom:-160px;opacity:.35}
.service-card:hover .service-glow{opacity:.9}

/* Trust: compact flow into Contact, with the five stars directly under MED. */
.trust{min-height:0;padding-top:62px;padding-bottom:48px}
.trust-heading{margin-bottom:22px}
.trust-composition{min-height:292px}
.trust-core{gap:13px}
.trust-stars{display:flex;align-items:center;justify-content:center;gap:7px;position:relative;z-index:2;margin-top:-1px}
.trust-stars span{
  color:var(--mint);
  font-size:17px;
  line-height:1;
  text-shadow:0 0 16px rgba(0,193,108,.2);
  transition:transform .35s var(--ease),filter .35s ease;
}
.trust-stars span:hover{transform:translateY(-2px) scale(1.08);filter:brightness(1.12)}
.trust-core-mark{box-shadow:0 0 55px rgba(0,193,108,.35),inset 0 1px 0 rgba(255,255,255,.08)}

/* Contact follows Trust without a large dead zone. */
.contact{padding-top:54px;padding-bottom:82px}

/* Footer social links are icons, matching the header language. */
.footer-socials{display:flex;align-items:center;gap:12px}
.footer-social-icon{
  width:48px!important;
  height:48px;
  border:1px solid var(--line);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#cbd2ce!important;
  letter-spacing:0!important;
  transition:transform .35s var(--ease),background .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease)!important;
}
.footer-social-icon:hover{transform:translateY(-3px);background:var(--green);border-color:rgba(0,193,108,.35);color:#fff!important}
.footer-social-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5}
.footer-social-icon .fill{fill:currentColor;stroke:none}

/* Contact email CTA: clearer visual target with stronger brand contrast. */
.email-orbit{
  width:176px;
  height:176px;
  border-color:rgba(0,193,108,.52);
  background:radial-gradient(circle at 35% 30%,rgba(0,193,108,.5),rgba(7,14,12,.82) 70%);
  box-shadow:0 0 60px rgba(0,193,108,.25),inset 0 1px 0 rgba(255,255,255,.08);
}
.email-orbit:hover{background:radial-gradient(circle at 35% 30%,rgba(0,193,108,.75),rgba(7,14,12,.78) 70%);box-shadow:0 0 85px rgba(0,193,108,.42),inset 0 1px 0 rgba(255,255,255,.1)}
.email-icon{width:58px;height:58px;background:var(--mint);box-shadow:0 10px 30px rgba(0,193,108,.18)}
.email-icon svg{width:26px;height:26px;stroke-width:1.5}
.email-label{bottom:29px;color:#eef5f1;font-weight:600}
.email-arrow{color:var(--mint);font-size:18px}

@media(max-width:1000px){
  .brand{width:86px;height:46px}.brand img{width:76px}
  .trust{padding-top:54px;padding-bottom:42px}
  .trust-composition{min-height:260px}
  .service-card{min-height:470px}
  .contact{padding-top:48px}
}

@media(max-width:600px){
  .brand{width:82px;height:44px}.brand img{width:72px}
  .ideas,.about,.offer,.trust{padding-top:48px;padding-bottom:42px}
  .offer-heading{margin-bottom:34px}
  .service-list{gap:12px}
  .service-card,.service-card:nth-child(2),.service-card:nth-child(3){min-height:430px;padding:24px;border-radius:28px 28px 58px 28px}
  .service-card:nth-child(2){border-radius:58px 28px 28px 28px}
  .service-card:nth-child(3){border-radius:28px 58px 28px 28px}
  .service-card:after{font-size:105px;right:17px;bottom:-14px}
  .service-main{padding:58px 0 38px}
  .service-main h3{font-size:40px}
  .service-main p{font-size:12px;line-height:1.75}
  .service-cta{min-height:50px;font-size:9px}
  .service-cta span{width:29px;height:29px}
  .trust{padding-top:48px;padding-bottom:38px}
  .trust-composition{min-height:246px}
  .trust-stars{gap:5px}
  .trust-stars span{font-size:14px}
  .contact{padding-top:44px;padding-bottom:60px}
  .email-orbit{width:146px;height:146px;margin-top:42px}
  .email-icon{width:50px;height:50px}.email-icon svg{width:23px;height:23px}
  .email-label{bottom:25px;font-size:8px}
  .email-arrow{top:21px;right:21px}
  .site-footer{padding:54px 0 58px}
  .footer-socials{gap:12px}
  .footer-social-icon{width:46px!important;height:46px}
  .footer-social-icon svg{width:20px;height:20px}
}

/* =========================================================
   FINAL REQUESTED REFINEMENTS
   Keep the existing visual language; only refine sizing,
   spacing, navigation behavior and responsive composition.
   ========================================================= */

/* Header: one balanced visual scale; no scroll-active navigation state. */
.site-header{grid-template-columns:auto minmax(0,1fr) auto}
.brand{width:50px;height:42px}
.brand img{width:44px;height:auto;object-fit:contain}
.main-nav{justify-content:center;gap:44px}
.main-nav a{font-size:16px;font-weight:500}
.header-socials{gap:10px}
.header-socials a{width:42px;height:42px}
.header-socials svg{width:19px;height:19px}

/* The desktop contact composition stays substantial without becoming a tall gap. */
.contact{min-height:650px;padding-top:72px;padding-bottom:76px}
.email-orbit{top:59%}

/* Trust now hands off directly into Contact. */
.trust{padding-bottom:34px}

/* Footer: compact, still visually substantial. */
.site-footer{min-height:170px;padding:32px 0}

/* The mobile header uses the real navigation + both social icons; no toggle menu. */
.menu-toggle,.mobile-nav{display:none!important}

@media(max-width:1000px){
  .site-header{grid-template-columns:auto minmax(0,1fr) auto;height:88px}
  .site-header.scrolled{height:76px}
  .main-nav{display:flex;gap:22px;min-width:0}
  .main-nav a{font-size:14px;padding:9px 0;white-space:nowrap}
  .header-socials{display:flex;gap:8px}
  .header-socials a{width:40px;height:40px}
  .header-socials svg{width:18px;height:18px}
  .brand{width:48px;height:40px}
  .brand img{width:43px}
  .contact{min-height:600px;padding-top:62px;padding-bottom:68px}
  .email-orbit{top:61%}
  .trust{padding-bottom:28px}
  .site-footer{min-height:190px;padding:30px 0}
}

@media(max-width:600px){
  html{scroll-padding-top:82px}
  .site-header{width:calc(100% - 20px);height:76px;grid-template-columns:auto minmax(0,1fr) auto;column-gap:8px}
  .site-header.scrolled{height:70px}
  .brand{width:40px;height:36px}
  .brand img{width:38px}
  .main-nav{display:flex;justify-content:center;gap:9px;min-width:0}
  .main-nav a{font-size:10px;font-weight:500;letter-spacing:0;padding:7px 0}
  .main-nav a:after{bottom:1px}
  .header-socials{gap:5px}
  .header-socials a{width:31px;height:31px}
  .header-socials svg{width:15px;height:15px}

  /* Hero is composed for the narrow viewport, not merely scaled down. */
  .hero{padding-top:92px;padding-bottom:34px}
  .hero-grid{gap:4px}
  .hero-copy{text-align:center;padding-top:18px}
  .hero-copy .eyebrow{justify-content:center;margin-bottom:24px}
  .hero h1{margin-bottom:30px}
  .hero h1 span{margin-left:0}
  .hero h1 em{margin-left:0}
  .hero-meta{justify-items:center}
  .hero-meta>p{max-width:285px;text-align:center}
  .hero-visual{height:500px;margin-top:-2px}
  .hero-stage{width:min(92vw,430px);height:465px}

  /* Technology and MED remain clearly separated on mobile. */
  .ideas-stage{height:500px;margin-top:34px}
  .idea-4{right:-1%;bottom:11%}
  .ideas-center{z-index:3}
  .idea-4 img{margin-bottom:16px}
  .idea-4{padding-bottom:18px}

  /* Major section rhythm: compact but breathable. */
  .ideas,.about,.offer,.trust{padding-top:48px;padding-bottom:40px}
  .offer{padding-bottom:42px}
  .trust{padding-bottom:24px}

  /* Contact: enough separation between headline and email CTA. */
  .contact{min-height:540px;padding-top:52px;padding-bottom:54px}
  .contact-content{text-align:center}
  .contact-content .eyebrow{justify-content:center}
  .contact h2{margin-top:24px;margin-bottom:20px}
  .contact-big{margin:0}
  .email-orbit{position:relative;right:auto;top:auto;margin:68px auto 0;width:136px;height:136px}
  .email-icon{width:50px;height:50px}

  /* Mobile service cards: keep the art direction, tighten the vertical rhythm. */
  .service-list{gap:14px}
  .service-card,.service-card:nth-child(2),.service-card:nth-child(3){min-height:410px;padding:23px;border-radius:26px 26px 54px 26px}
  .service-card:nth-child(2){border-radius:54px 26px 26px 26px}
  .service-card:nth-child(3){border-radius:26px 54px 26px 26px}
  .service-main{padding:52px 0 34px}
  .service-main h3{font-size:38px}
  .service-main p{max-width:285px}

  /* Compact, centered mobile footer. */
  .site-footer{width:calc(100% - 20px);min-height:180px;padding:28px 0 30px;gap:20px;justify-items:center;text-align:center}
  .footer-left{font-size:12px}
  .footer-nav{justify-content:center;gap:16px;flex-wrap:wrap}
  .footer-nav a{font-size:11px}
  .footer-socials{justify-self:center;justify-content:center;gap:10px}
  .footer-social-icon{width:40px!important;height:40px}
  .footer-social-icon svg{width:17px;height:17px}
}


/* =========================================================
   FINAL VISUAL REFINEMENTS
   Exact requested changes only: text wordmark, simplified
   mobile header, selection color, section color/spacing,
   and responsive composition corrections.
   ========================================================= */

/* Brand wordmark — text only, intentionally distinct from navigation. */
.brand{
  width:auto;
  height:auto;
  display:inline-flex;
  align-items:center;
  justify-self:start;
  color:var(--text);
  font-size:22px;
  line-height:1;
  font-weight:850;
  letter-spacing:-.09em;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  transform-origin:left center;
  transition:color .3s ease,transform .3s var(--ease);
}
.brand:hover{color:#fff;transform:scale(1.035)}

/* Desktop header: balanced visual scale and deliberate horizontal rhythm. */
.site-header{
  grid-template-columns:1fr auto 1fr;
  column-gap:40px;
}
.main-nav{gap:48px}
.main-nav a{font-size:16px;font-weight:500}
.header-socials{gap:12px}
.header-socials a{width:44px;height:44px}
.header-socials svg{width:20px;height:20px}

/* Never use the browser's default blue selection. */
::selection{background:var(--mint);color:#fff}
::-moz-selection{background:var(--mint);color:#fff}

/* Section 5 heading follows the same white + mint treatment as the other major headings. */
.trust-heading h2{color:var(--text)}
.trust-heading h2 span{color:var(--mint)}

/* Keep Contact visually separated: CTA sits clearly below the large heading. */
.contact{position:relative}
.contact-content{position:static}
.contact-content .eyebrow,
.contact-content h2,
.contact-content .contact-big{position:relative;z-index:2}
.contact .email-orbit{
  top:auto;
  right:8%;
  bottom:7%;
  z-index:3;
}

@media (min-width:768px){
  .site-header{padding-inline:4px}
}

/* Mobile header is intentionally minimal: MED + Instagram + Email only. */
@media (max-width:767px){
  html{scroll-padding-top:82px}
  .site-header{
    width:calc(100% - 20px);
    height:76px;
    grid-template-columns:1fr auto;
    column-gap:16px;
    padding-inline:0;
  }
  .site-header.scrolled{height:70px}
  .brand{
    font-size:21px;
    line-height:1;
    justify-self:start;
  }
  .main-nav{display:none!important}
  .header-socials{
    justify-self:end;
    gap:8px;
  }
  .header-socials a{
    width:40px;
    height:40px;
  }
  .header-socials svg{width:18px;height:18px}

  /* Contact: the CTA remains clearly detached from the heading. */
  .contact{
    min-height:0;
    padding-top:52px;
    padding-bottom:58px;
  }
  .contact .email-orbit{
    position:relative;
    top:auto;
    right:auto;
    bottom:auto;
    margin:82px auto 0;
    width:136px;
    height:136px;
  }

  /* Mobile Section 2: create a controlled separation between the center mark and Technology. */
  .ideas-stage{height:500px}
  .ideas-center{z-index:3}
  .idea-4{
    right:-2%;
    bottom:7%;
    padding-bottom:0;
  }
  .idea-4 img{margin-bottom:0}
  .idea-4 span{margin-top:9px}

  /* Keep the mobile section rhythm compact and intentional. */
  .ideas,.about,.offer,.trust{
    padding-top:48px;
    padding-bottom:40px;
  }
  .trust{padding-bottom:24px}

  /* Compact centered footer. */
  .site-footer{
    width:calc(100% - 20px);
    min-height:0;
    padding:28px 0 30px;
    gap:18px;
    justify-items:center;
    text-align:center;
  }
  .footer-left{font-size:12px}
  .footer-nav{justify-content:center;gap:16px;flex-wrap:wrap}
  .footer-nav a{font-size:11px}
  .footer-socials{justify-self:center;justify-content:center;gap:10px}
  .footer-social-icon{width:40px!important;height:40px}
  .footer-social-icon svg{width:17px;height:17px}
}

/* =========================================================
   TABLET + FINAL SYSTEM PASS
   Dedicated tablet composition; section labels are title-only;
   header/footer share one navigation and icon language.
   ========================================================= */

/* Section numbering is intentionally removed from the visual system. */
.about-number{display:none!important}

/* Footer navigation mirrors the header navigation exactly. */
.footer-nav{display:flex;align-items:center;gap:48px}
.footer-nav a{
  position:relative;
  padding:12px 0;
  font-size:16px;
  font-weight:500;
  letter-spacing:.015em;
  color:#d6dbd7;
  text-transform:none;
}
.footer-nav a:after{
  content:"";
  position:absolute;
  left:0;
  bottom:2px;
  width:100%;
  height:1px;
  background:var(--mint);
  transform:scaleX(0);
  transform-origin:right;
  transition:transform .4s var(--ease);
}
.footer-nav a:hover{color:#fff}
.footer-nav a:hover:after{transform:scaleX(1);transform-origin:left}
/* Keep Termly's required anchor/class while presenting the requested label. */
.footer-nav a.termly-display-preferences{font-size:0}
.footer-nav a.termly-display-preferences:before{content:"Cookies";font-size:16px}
.footer-nav a.termly-display-preferences:after{bottom:2px}
.footer-socials{display:flex;align-items:center;gap:12px}
.footer-social-icon{
  width:44px!important;
  height:44px!important;
  border:1px solid var(--line)!important;
  border-radius:50%;
  display:grid!important;
  place-items:center;
  color:#cbd2ce!important;
  padding:0!important;
  letter-spacing:0!important;
  transition:transform .35s var(--ease),background .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease)!important;
}
.footer-social-icon:after{display:none!important}
.footer-social-icon:hover{transform:translateY(-3px);background:var(--green);border-color:rgba(0,193,108,.35)!important;color:#fff!important}
.footer-social-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}
.footer-social-icon .fill{fill:currentColor;stroke:none}

/* =========================================================
   TABLET: 768–1100px
   Designed as a distinct layout, not a compressed desktop/mobile.
   ========================================================= */
@media (min-width:768px) and (max-width:1100px){
  .section-pad,
  .site-header,
  .site-footer{width:calc(100% - 64px)}

  .site-header{
    height:96px;
    grid-template-columns:auto 1fr auto;
    column-gap:28px;
    padding-inline:0;
  }
  .site-header.scrolled{height:82px}
  .brand{font-size:21px;justify-self:start}
  .main-nav{display:flex;justify-content:center;gap:30px;min-width:0}
  .main-nav a{font-size:14px;padding:10px 0;white-space:nowrap}
  .header-socials{display:flex;gap:8px}
  .header-socials a{width:42px;height:42px}
  .header-socials svg{width:19px;height:19px}

  /* Hero: balanced two-column tablet composition. */
  .hero{min-height:auto;padding-top:128px;padding-bottom:56px}
  .hero-grid{
    grid-template-columns:minmax(0,.86fr) minmax(360px,1.14fr);
    gap:18px;
    min-height:650px;
  }
  .hero-copy{padding-bottom:0}
  .hero-copy .eyebrow{margin-bottom:28px}
  .hero h1{font-size:clamp(72px,9.2vw,104px);margin-bottom:36px}
  .hero h1 span{margin-bottom:14px}
  .hero h1 em{margin-top:14px}
  .hero-meta{grid-template-columns:130px 1px minmax(140px,220px);gap:18px}
  .experience b{font-size:58px}
  .hero-meta>p{font-size:12px;line-height:1.7}
  .hero-visual{height:600px}
  .hero-stage{width:min(100%,450px);height:570px;right:0;border-radius:30px 30px 100px 30px}
  .hero-tag.top{right:-2%;top:12%;padding:12px 15px}
  .hero-tag.bottom{left:-2%;bottom:11%;padding:13px 15px}
  .scroll-mark{display:none}

  /* Ideas: wider orbit and six-point composition sized for tablet. */
  .ideas{padding-top:70px;padding-bottom:72px}
  .section-intro{grid-template-columns:1fr 1.4fr;gap:28px}
  .section-intro h2{font-size:clamp(50px,6.8vw,72px)}
  .intro-copy{grid-column:2;max-width:310px}
  .ideas-stage{height:500px;margin-top:40px}
  .ideas-ring{width:470px;height:280px}
  .ideas-center{width:150px;height:150px}
  .ideas-center span{font-size:27px}
  .idea-item{width:116px}
  .idea-item img{width:84px;height:84px;border-radius:22px}
  .idea-item span{font-size:9px;margin-top:10px}
  .idea-1{left:4%;top:16%}
  .idea-2{left:25%;top:0}
  .idea-3{right:25%;top:0}
  .idea-4{right:4%;top:17%}
  .idea-5{left:19%;bottom:2%}
  .idea-6{right:18%;bottom:0}

  /* About: two-column tablet editorial layout. */
  .about{padding-top:72px;padding-bottom:74px}
  .about-layout{grid-template-columns:110px minmax(0,1fr);gap:34px;align-items:start}
  .about-aside{padding-top:8px}
  .about-copy h2{font-size:clamp(52px,7vw,76px)}
  .about-copy .lead,.more-content p{font-size:14px;line-height:1.8}
  .about-art{grid-column:2;height:190px;margin-top:4px}
  .about-art-circle{width:190px;height:190px;right:2%;top:0}
  .about-art-circle span{font-size:40px}
  .about-art-word{font-size:10px;bottom:10px}

  /* Offer: two columns gives each tablet card room to breathe. */
  .offer{padding-top:76px;padding-bottom:78px}
  .offer-heading{grid-template-columns:1fr 1.5fr;gap:22px;margin-bottom:36px}
  .offer-heading>p:last-child{grid-column:2;max-width:330px}
  .offer-heading h2{font-size:clamp(54px,7vw,78px)}
  .service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .service-card{min-height:420px;padding:24px;border-radius:28px 28px 64px 28px}
  .service-card:nth-child(2){border-radius:64px 28px 28px 28px}
  .service-card:nth-child(3){grid-column:1 / -1;min-height:390px;border-radius:28px 64px 28px 28px}
  .service-main{padding:54px 0 34px}
  .service-main h3{font-size:clamp(38px,4.5vw,50px)}
  .service-main p{font-size:12px;max-width:370px}

  /* Trust: centered editorial composition with controlled side artwork. */
  .trust{min-height:0;padding-top:64px;padding-bottom:62px}
  .trust-heading{max-width:700px;margin-bottom:24px}
  .trust-heading h2{font-size:clamp(48px,6.6vw,68px)}
  .trust-composition{max-width:860px;min-height:270px;grid-template-columns:180px 1fr 180px;gap:26px}
  .trust-art{height:250px}
  .trust-art img{width:170px;max-height:240px}
  .trust-core-mark{width:88px;height:88px}

  /* Contact: controlled tablet headline and separate CTA. */
  .contact{min-height:580px;padding-top:68px;padding-bottom:64px}
  .contact-big{font-size:clamp(62px,8.8vw,96px);max-width:820px}
  .contact-bg{width:48vw;height:560px;right:-2%;opacity:.18}
  .contact .email-orbit{right:7%;bottom:8%;width:142px;height:142px}

  /* Footer follows the header navigation system without becoming oversized. */
  .site-footer{min-height:180px;padding:34px 0;gap:26px}
  .footer-left{font-size:12px}
  .footer-nav{gap:26px}
  .footer-nav a,.footer-nav a.termly-display-preferences:before{font-size:14px}
  .footer-socials{gap:9px}
  .footer-social-icon{width:42px!important;height:42px!important}
}

/* Small mobile remains a distinct compact composition. */
@media (max-width:767px){
  .footer-nav a{font-size:12px;padding:8px 0}
  .footer-nav a.termly-display-preferences:before{font-size:12px}
}


/* =========================================================
   FINAL RESPONSIVE + COMPONENT CONSISTENCY PASS
   ========================================================= */

/* The header has no scroll-based active navigation state.
   Only its compact scrolled height/background may change. */
.main-nav a.is-active,
.main-nav a.active,
.main-nav a[aria-current="page"]{
  color:inherit;
}
.main-nav a.is-active:after,
.main-nav a.active:after,
.main-nav a[aria-current="page"]:after{
  transform:scaleX(0);
}

/* Service card numbering: real, readable card identifiers.
   The large background numerals remain decorative only. */
.service-top{
  min-height:32px;
}
.service-index{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:28px;
  padding:0 9px;
  border:1px solid rgba(0,193,108,.2);
  border-radius:999px;
  color:var(--mint);
  background:rgba(0,193,108,.055);
  font-size:11px;
  line-height:1;
  font-weight:700;
  letter-spacing:.14em;
}
.service-top .service-tag{
  margin-left:auto;
}

/* Footer social component uses exactly the same visual language as header. */
.footer-socials{
  display:flex;
  align-items:center;
  gap:10px;
}
.footer-social-icon{
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center;
  border:1px solid var(--line)!important;
  border-radius:50%;
}
.footer-social-icon svg{
  width:20px;
  height:20px;
}

/* ---------------------------------------------------------
   TABLET — dedicated composition: 768–1100px
   --------------------------------------------------------- */
@media (min-width:768px) and (max-width:1100px){

  html{
    scroll-padding-top:100px;
  }

  .section-pad,
  .site-header,
  .site-footer{
    width:calc(100% - 64px);
  }

  /* Header */
  .site-header{
    height:94px;
    grid-template-columns:minmax(90px,1fr) auto minmax(110px,1fr);
    column-gap:24px;
    padding:0;
  }
  .site-header.scrolled{
    height:82px;
  }
  .brand{
    justify-self:start;
    font-size:22px;
    letter-spacing:-.1em;
  }
  .main-nav{
    justify-self:center;
    gap:30px;
  }
  .main-nav a{
    font-size:14px;
    font-weight:550;
    padding:10px 0;
  }
  .header-socials{
    justify-self:end;
    gap:8px;
  }
  .header-socials a{
    width:42px;
    height:42px;
  }
  .header-socials svg{
    width:19px;
    height:19px;
  }

  /* Hero: intentionally balanced 2-column tablet composition. */
  .hero{
    min-height:0;
    padding-top:126px;
    padding-bottom:60px;
  }
  .hero-grid{
    grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr);
    gap:26px;
    min-height:620px;
    align-items:center;
  }
  .hero-copy{
    padding:12px 0 0;
  }
  .hero-copy .eyebrow{
    margin-bottom:27px;
  }
  .hero h1{
    font-size:clamp(70px,9vw,100px);
    margin-bottom:34px;
  }
  .hero h1 span{
    margin-bottom:13px;
  }
  .hero h1 em{
    margin-top:13px;
  }
  .hero-meta{
    grid-template-columns:108px 1px minmax(135px,220px);
    gap:16px;
  }
  .experience b{
    font-size:58px;
  }
  .experience span{
    font-size:9px;
  }
  .hero-meta>p{
    font-size:11px;
    line-height:1.7;
  }
  .hero-visual{
    height:570px;
  }
  .hero-stage{
    width:min(100%,430px);
    height:540px;
    right:0;
    border-radius:28px 28px 96px 28px;
  }
  .hero-tag.top{
    right:-1%;
    top:12%;
    padding:11px 14px;
  }
  .hero-tag.bottom{
    left:-2%;
    bottom:10%;
    padding:12px 14px;
  }
  .hero-orbit{
    opacity:.8;
  }
  .scroll-mark{
    display:none;
  }

  /* Section 2 / Ideas */
  .ideas{
    padding-top:68px;
    padding-bottom:72px;
  }
  .section-intro{
    grid-template-columns:minmax(150px,.72fr) minmax(0,1.5fr) minmax(170px,.85fr);
    gap:24px;
  }
  .section-intro h2{
    font-size:clamp(48px,6.5vw,70px);
  }
  .intro-copy{
    max-width:270px;
    font-size:12px;
  }
  .ideas-stage{
    height:470px;
    margin-top:34px;
  }
  .ideas-ring{
    width:min(62vw,470px);
    height:270px;
  }
  .ideas-center{
    width:148px;
    height:148px;
  }
  .ideas-center span{
    font-size:26px;
  }
  .idea-item{
    width:110px;
  }
  .idea-item img{
    width:82px;
    height:82px;
    border-radius:20px;
  }
  .idea-item span{
    font-size:9px;
    margin-top:9px;
  }
  .idea-1{left:3%;top:16%}
  .idea-2{left:25%;top:0}
  .idea-3{right:25%;top:0}
  .idea-4{right:3%;top:17%}
  .idea-5{left:19%;bottom:1%}
  .idea-6{right:18%;bottom:0}

  /* About */
  .about{
    padding-top:70px;
    padding-bottom:72px;
  }
  .about-layout{
    grid-template-columns:92px minmax(0,1fr);
    gap:30px;
  }
  .about-copy h2{
    font-size:clamp(50px,6.8vw,74px);
  }
  .about-copy .lead,
  .more-content p{
    font-size:14px;
    line-height:1.8;
  }
  .about-art{
    grid-column:2;
    height:175px;
  }
  .about-art-circle{
    width:180px;
    height:180px;
    right:2%;
  }

  /* What I Offer — two cards + one full-width card gives tablet cards room. */
  .offer{
    padding-top:72px;
    padding-bottom:76px;
  }
  .offer-heading{
    grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);
    gap:20px;
    margin-bottom:34px;
  }
  .offer-heading h2{
    font-size:clamp(52px,6.8vw,76px);
  }
  .offer-heading>p:last-child{
    grid-column:2;
    max-width:320px;
    font-size:12px;
  }
  .service-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }
  .service-card{
    min-height:410px;
    padding:25px;
    border-radius:28px 28px 64px 28px;
  }
  .service-card:nth-child(2){
    border-radius:64px 28px 28px 28px;
  }
  .service-card:nth-child(3){
    grid-column:1 / -1;
    min-height:350px;
    border-radius:28px 64px 28px 28px;
  }
  .service-main{
    padding:48px 0 34px;
  }
  .service-main h3{
    font-size:clamp(38px,4.3vw,50px);
  }
  .service-main p{
    max-width:360px;
    font-size:12px;
  }
  .service-card:after{
    font-size:125px;
    right:20px;
    bottom:-18px;
  }

  /* Trust */
  .trust{
    padding-top:60px;
    padding-bottom:48px;
  }
  .trust-heading{
    max-width:680px;
  }
  .trust-heading h2{
    font-size:clamp(48px,6.3vw,68px);
  }
  .trust-composition{
    max-width:820px;
    min-height:250px;
    grid-template-columns:165px minmax(0,1fr) 165px;
    gap:22px;
  }
  .trust-art{
    height:235px;
  }
  .trust-art img{
    width:155px;
    max-height:225px;
  }
  .trust-core-mark{
    width:86px;
    height:86px;
  }

  /* Contact: heading and CTA are separate visual zones. */
  .contact{
    min-height:570px;
    padding-top:64px;
    padding-bottom:60px;
  }
  .contact-big{
    font-size:clamp(60px,8.5vw,94px);
    max-width:760px;
  }
  .contact-bg{
    width:47vw;
    height:520px;
    right:-2%;
    opacity:.18;
  }
  .contact .email-orbit{
    right:6%;
    bottom:7%;
    width:144px;
    height:144px;
  }

  /* Footer: preserve the same 3-part logic on tablet. */
  .site-footer{
    min-height:170px;
    padding:30px 0;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    gap:20px;
  }
  .footer-left{
    font-size:12px;
  }
  .footer-nav{
    justify-content:center;
    gap:24px;
  }
  .footer-nav a,
  .footer-nav a.termly-display-preferences:before{
    font-size:14px;
  }
  .footer-socials{
    justify-self:end;
    gap:8px;
  }
  .footer-social-icon{
    width:42px!important;
    height:42px!important;
  }
}

/* Narrow portrait tablets: retain a tablet composition but give the hero
   more breathing room instead of forcing a cramped 2-column layout. */
@media (min-width:768px) and (max-width:860px){
  .site-header{
    column-gap:16px;
  }
  .main-nav{
    gap:20px;
  }
  .main-nav a{
    font-size:13px;
  }

  .hero{
    padding-top:116px;
  }
  .hero-grid{
    grid-template-columns:1fr;
    min-height:0;
    gap:34px;
  }
  .hero-copy{
    max-width:620px;
    margin-inline:auto;
  }
  .hero-visual{
    height:500px;
    width:min(100%,560px);
    margin-inline:auto;
  }
  .hero-stage{
    width:min(100%,470px);
    height:480px;
    right:50%;
    transform:translateX(50%);
  }
  .hero-tag.top{right:2%}
  .hero-tag.bottom{left:2%}

  .section-intro{
    grid-template-columns:1fr 1.35fr;
  }
  .intro-copy{
    grid-column:2;
  }
}

/* ---------------------------------------------------------
   Mobile — only MED + Instagram + Email in the header.
   --------------------------------------------------------- */
@media (max-width:767px){
  .site-header{
    grid-template-columns:1fr auto;
    height:76px;
    width:calc(100% - 20px);
    column-gap:16px;
  }
  .site-header.scrolled{
    height:70px;
  }
  .brand{
    font-size:21px;
    letter-spacing:-.1em;
  }
  .main-nav{
    display:none!important;
  }
  .header-socials{
    display:flex;
    justify-self:end;
    gap:8px;
  }
  .header-socials a{
    width:40px;
    height:40px;
  }
  .header-socials svg{
    width:18px;
    height:18px;
  }

  /* Section 2: separate the Technology tile from MEDCURIOUS BY NATURE
     without creating a dead zone. */
  .ideas-stage{
    height:510px;
  }
  .ideas-center{
    transform:translate(-50%,-58%);
  }
  .idea-4{
    right:-2%;
    bottom:2%;
    transform:translateY(10px);
  }
  .idea-4 img{
    margin-bottom:0;
  }

  /* Contact CTA is clearly below the heading, not attached to its last line. */
  .contact{
    min-height:0;
    padding-top:52px;
    padding-bottom:58px;
  }
  .contact .email-orbit{
    position:relative;
    top:auto;
    right:auto;
    bottom:auto;
    margin:76px auto 0;
    width:136px;
    height:136px;
  }

  /* Footer remains centered and keeps Instagram -> Email order. */
  .site-footer{
    width:calc(100% - 20px);
    min-height:0;
    padding:28px 0 30px;
    gap:18px;
    grid-template-columns:1fr;
    justify-items:center;
    text-align:center;
  }
  .footer-left{
    font-size:12px;
  }
  .footer-nav{
    justify-content:center;
    gap:16px;
    flex-wrap:wrap;
  }
  .footer-nav a,
  .footer-nav a.termly-display-preferences:before{
    font-size:12px;
  }
  .footer-socials{
    justify-self:center;
    justify-content:center;
    gap:10px;
  }
  .footer-social-icon{
    width:40px!important;
    height:40px!important;
  }
  .footer-social-icon svg{
    width:17px;
    height:17px;
  }

  /* Service numbering stays clear on every mobile card. */
  .service-index{
    min-width:31px;
    height:26px;
    font-size:10px;
  }
}


/* =========================================================
   FINAL TABLET ART-DIRECTION + READ MORE INTERACTION
   This block intentionally sits last so tablet behavior is
   deterministic instead of being affected by earlier passes.
   ========================================================= */

/* About expandable content */
.more-content{
  max-height:0;
  opacity:0;
  overflow:hidden;
  margin-top:0;
  transform:translateY(-8px);
  transition:max-height .72s var(--ease),opacity .4s ease,margin .72s var(--ease),transform .72s var(--ease);
}
.more-content.is-open{
  max-height:900px;
  opacity:1;
  margin-top:24px;
  transform:translateY(0);
}
.read-more{
  position:relative;
  min-height:44px;
  margin-top:32px;
  padding:0 0 11px;
  gap:16px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.25);
  background:none;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:10px;
  font-weight:600;
  cursor:pointer;
  transition:color .3s ease,border-color .3s ease;
}
.read-more:hover{
  color:#fff;
  border-color:rgba(0,193,108,.55);
}
.read-more-label{display:inline-block;min-width:78px}
.read-more-icon{
  position:relative;
  width:22px;
  height:22px;
  flex:0 0 22px;
  border:1px solid rgba(0,193,108,.38);
  border-radius:50%;
  color:var(--mint);
  transition:transform .45s var(--ease),background .35s ease,border-color .35s ease;
}
.read-more-icon:before,
.read-more-icon:after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:9px;
  height:1px;
  background:currentColor;
  transform:translate(-50%,-50%);
  transition:transform .35s var(--ease);
}
.read-more-icon:after{
  transform:translate(-50%,-50%) rotate(90deg);
}
.read-more:hover .read-more-icon{
  background:rgba(0,193,108,.1);
  border-color:rgba(0,193,108,.7);
  transform:scale(1.06);
}
.read-more[aria-expanded="true"] .read-more-icon{
  transform:rotate(180deg);
  background:rgba(0,193,108,.08);
}
.read-more[aria-expanded="true"] .read-more-icon:after{
  transform:translate(-50%,-50%) rotate(0deg);
}

/* Tablet: one intentional system from 768px through 1100px. */
@media (min-width:768px) and (max-width:1100px){
  :root{--tablet-gutter:clamp(28px,4.2vw,46px)}

  html{scroll-padding-top:96px}
  .section-pad,
  .site-header,
  .site-footer{
    width:calc(100% - (var(--tablet-gutter) * 2));
  }

  /* Header */
  .site-header{
    height:92px;
    grid-template-columns:minmax(110px,1fr) auto minmax(120px,1fr);
    column-gap:22px;
    background:linear-gradient(180deg,rgba(8,12,11,.88),rgba(8,12,11,.48));
  }
  .site-header.scrolled{height:82px}
  .brand{
    width:auto;
    height:auto;
    justify-self:start;
    font-size:22px;
    font-weight:750;
    letter-spacing:-.1em;
  }
  .main-nav{
    justify-self:center;
    gap:clamp(22px,3.1vw,34px);
  }
  .main-nav a{
    font-size:14px;
    font-weight:550;
    padding:10px 0;
    white-space:nowrap;
  }
  .header-socials{justify-self:end;gap:9px}
  .header-socials a{width:42px;height:42px}
  .header-socials svg{width:19px;height:19px}

  /* Hero — landscape tablet: text and portrait are proportioned as two
     distinct visual zones rather than a squeezed desktop grid. */
  .hero{
    min-height:0;
    padding-top:118px;
    padding-bottom:62px;
  }
  .hero-grid{
    grid-template-columns:minmax(0,.86fr) minmax(390px,1.14fr);
    gap:clamp(22px,3vw,38px);
    min-height:620px;
    align-items:center;
  }
  .hero-copy{padding:0 0 8px}
  .hero-copy .eyebrow{margin-bottom:26px}
  .hero h1{
    font-size:clamp(74px,8.6vw,102px);
    line-height:.82;
    margin-bottom:34px;
  }
  .hero h1 span{margin-bottom:14px}
  .hero h1 em{margin-top:14px}
  .hero-meta{
    grid-template-columns:105px 1px minmax(145px,220px);
    gap:15px;
  }
  .experience span{font-size:9px}
  .experience b{font-size:58px}
  .hero-meta>p{font-size:11px;line-height:1.7}
  .hero-visual{height:570px}
  .hero-stage{
    width:min(100%,460px);
    height:550px;
    right:0;
    border-radius:30px 30px 104px 30px;
  }
  .hero-portrait img{height:100%;max-width:94%}
  .hero-word{font-size:clamp(110px,13vw,160px);left:7%;top:14%}
  .hero-tag.top{right:-1%;top:11%;padding:11px 14px}
  .hero-tag.bottom{left:-1%;bottom:10%;padding:12px 14px}
  .scroll-mark{display:none}

  /* Ideas — reduce the orbit and keep all six tiles inside the content rail. */
  .ideas{padding-top:70px;padding-bottom:74px}
  .section-intro{grid-template-columns:minmax(130px,.72fr) minmax(0,1.45fr) minmax(150px,.8fr);gap:22px}
  .section-intro h2{font-size:clamp(48px,6.2vw,70px)}
  .intro-copy{font-size:12px;max-width:250px}
  .ideas-stage{height:455px;margin-top:34px}
  .ideas-ring{width:min(61vw,455px);height:255px}
  .ideas-center{width:144px;height:144px}
  .idea-item{width:104px}
  .idea-item img{width:78px;height:78px;border-radius:20px}
  .idea-item span{font-size:8px;margin-top:9px}
  .idea-1{left:2%;top:17%}.idea-2{left:24%;top:0}.idea-3{right:24%;top:0}.idea-4{right:2%;top:17%}.idea-5{left:17%;bottom:1%}.idea-6{right:17%;bottom:0}

  /* About — editorial two-column layout, with the decorative art kept in the
     same content rail instead of creating a giant dead zone. */
  .about{padding-top:72px;padding-bottom:76px}
  .about-layout{grid-template-columns:82px minmax(0,1fr);gap:28px;align-items:start}
  .about-aside{padding-top:5px}
  .vertical-label{margin-top:74px}
  .about-copy h2{font-size:clamp(50px,6.6vw,74px);margin-bottom:28px}
  .about-copy .lead,.more-content p{font-size:14px;line-height:1.78}
  .about-art{grid-column:2;height:170px;margin-top:8px}
  .about-art-circle{width:175px;height:175px;right:3%;top:0}
  .about-art-circle span{font-size:40px}
  .about-art-word{font-size:9px;bottom:8px}

  /* Services — 2 + 1 is deliberately used at tablet widths so each card
     has enough horizontal room for a premium hierarchy. */
  .offer{padding-top:74px;padding-bottom:78px}
  .offer-heading{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:22px;margin-bottom:34px}
  .offer-heading h2{font-size:clamp(52px,6.5vw,76px)}
  .offer-heading>p:last-child{grid-column:2;max-width:300px;font-size:12px}
  .service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .service-card{min-height:405px;padding:24px;border-radius:28px 28px 64px 28px}
  .service-card:nth-child(2){border-radius:64px 28px 28px 28px}
  .service-card:nth-child(3){grid-column:1/-1;min-height:330px;border-radius:28px 64px 28px 28px}
  .service-main{padding:48px 0 32px}
  .service-main h3{font-size:clamp(38px,4.1vw,50px);margin-bottom:20px}
  .service-main p{font-size:12px;line-height:1.75;max-width:360px}
  .service-index{min-width:34px;height:28px}

  /* Trust */
  .trust{min-height:0;padding-top:64px;padding-bottom:58px}
  .trust-heading{max-width:680px;margin-bottom:22px}
  .trust-heading h2{font-size:clamp(48px,6.1vw,68px)}
  .trust-heading p:not(.eyebrow){font-size:14px}
  .trust-composition{max-width:820px;min-height:245px;grid-template-columns:160px minmax(0,1fr) 160px;gap:20px}
  .trust-art{height:225px}
  .trust-art img{width:150px;max-height:215px}
  .trust-core-mark{width:84px;height:84px}

  /* Contact — split the headline and image into clear zones; the email orbit
     lives in its own lower-right area instead of floating into the heading. */
  .contact{min-height:560px;padding-top:64px;padding-bottom:60px}
  .contact-big{font-size:clamp(58px,8.2vw,92px);max-width:760px}
  .contact-bg{width:44vw;height:500px;right:-1%;opacity:.18}
  .contact .email-orbit{right:5%;top:auto;bottom:7%;width:140px;height:140px}

  /* Footer — same three-part structure on tablet as desktop. */
  .site-footer{min-height:166px;padding:30px 0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:20px}
  .footer-left{font-size:12px}
  .footer-nav{gap:24px}
  .footer-nav a,.footer-nav a.termly-display-preferences:before{font-size:14px}
  .footer-socials{justify-self:end;gap:9px}
  .footer-social-icon{width:42px!important;height:42px!important}
}

/* Tablet portrait: deliberately changes composition, not scale. */
@media (min-width:768px) and (max-width:899px){
  .site-header{grid-template-columns:1fr auto 1fr;column-gap:14px}
  .main-nav{gap:20px}
  .main-nav a{font-size:13px}

  .hero{padding-top:116px;padding-bottom:52px}
  .hero-grid{
    grid-template-columns:1fr;
    gap:30px;
    min-height:0;
  }
  .hero-copy{
    max-width:680px;
    width:100%;
    margin-inline:auto;
    padding:0 2px;
  }
  .hero-copy .eyebrow{margin-bottom:22px}
  .hero h1{font-size:clamp(72px,10.6vw,94px);margin-bottom:30px}
  .hero-meta{grid-template-columns:125px 1px minmax(170px,280px);gap:18px}
  .hero-visual{
    width:min(100%,620px);
    height:500px;
    margin-inline:auto;
  }
  .hero-stage{
    width:min(100%,500px);
    height:480px;
    right:50%;
    transform:translateX(50%);
    border-radius:28px 28px 92px 28px;
  }
  .hero-portrait img{max-width:92%}
  .hero-tag.top{right:2%;top:10%}
  .hero-tag.bottom{left:2%;bottom:8%}

  .section-intro{grid-template-columns:minmax(140px,.75fr) minmax(0,1.4fr);gap:24px}
  .intro-copy{grid-column:2}
  .ideas-stage{height:430px}
  .ideas-ring{width:430px;height:245px}
  .idea-item{width:96px}
  .idea-item img{width:72px;height:72px}

  .about-layout{grid-template-columns:72px minmax(0,1fr);gap:24px}
  .about-copy h2{font-size:clamp(48px,7.2vw,68px)}
  .about-art{height:150px}
  .about-art-circle{width:155px;height:155px}

  .service-card{min-height:390px}
  .service-card:nth-child(3){min-height:310px}
  .service-main h3{font-size:clamp(36px,4.6vw,46px)}

  .trust-composition{grid-template-columns:140px minmax(0,1fr) 140px;gap:14px}
  .trust-art img{width:130px}
  .contact-big{font-size:clamp(56px,8.6vw,82px)}
}

/* Very narrow tablet widths: keep the dedicated portrait layout stable. */
@media (min-width:768px) and (max-width:820px){
  .section-pad,.site-header,.site-footer{width:calc(100% - 48px)}
  .header-socials a{width:40px;height:40px}
  .hero h1{font-size:76px}
  .hero-meta{grid-template-columns:112px 1px minmax(150px,1fr)}
  .contact-big{font-size:58px}
}

/* Small phones inherit the mobile composition but keep the new control. */
@media (max-width:767px){
  .read-more{margin-top:28px;min-height:42px}
  .read-more-label{min-width:76px}
}

/* =========================================================
   TABLET ART-DIRECTED RECOMPOSITION — FINAL PASS
   768px–1199px is treated as its own composition system.
   This block intentionally overrides earlier tablet rules.
   ========================================================= */
@media (min-width:768px) and (max-width:1199px){
  :root{--tablet-gutter:clamp(28px,4vw,48px)}

  html{scroll-padding-top:96px}
  .section-pad,
  .site-header,
  .site-footer{
    width:calc(100% - (var(--tablet-gutter) * 2));
  }

  /* ---------- HEADER ---------- */
  .site-header{
    height:92px;
    grid-template-columns:minmax(100px,.8fr) auto minmax(100px,.8fr);
    column-gap:clamp(16px,2.5vw,30px);
    padding:0;
  }
  .site-header.scrolled{height:82px}
  .brand{
    width:auto;
    height:auto;
    justify-self:start;
    font-size:22px;
    font-weight:750;
    letter-spacing:-.1em;
  }
  .main-nav{
    display:flex;
    justify-self:center;
    align-items:center;
    gap:clamp(20px,3vw,34px);
  }
  .main-nav a{
    font-size:14px;
    font-weight:550;
    padding:10px 0;
    white-space:nowrap;
  }
  .header-socials{display:flex;justify-self:end;gap:8px}
  .header-socials a{width:42px;height:42px}
  .header-socials svg{width:19px;height:19px}

  /* ---------- HERO ----------
     Deliberately remains a two-column composition throughout tablet.
     The portrait gets its own visual zone and can never escape the rail. */
  .hero{
    min-height:0;
    padding-top:118px;
    padding-bottom:64px;
  }
  .hero-grid{
    width:100%;
    min-height:0;
    height:clamp(575px,68vw,650px);
    display:grid;
    grid-template-columns:minmax(0,44fr) minmax(0,56fr);
    gap:clamp(20px,3vw,38px);
    align-items:center;
  }
  .hero-copy{
    min-width:0;
    padding:0 0 10px;
    align-self:center;
    z-index:4;
  }
  .hero-copy .eyebrow{margin-bottom:26px}
  .hero h1{
    font-size:clamp(66px,8.3vw,104px);
    line-height:.82;
    letter-spacing:-.085em;
    margin:0 0 clamp(30px,3.2vw,38px);
  }
  .hero h1 span{margin:0 0 13px 5px;font-size:.28em}
  .hero h1 em{margin:13px 0 0 7px;font-size:.36em}
  .hero-meta{
    grid-template-columns:clamp(94px,11vw,125px) 1px minmax(125px,1fr);
    gap:clamp(13px,1.8vw,20px);
    align-items:end;
  }
  .experience span{font-size:9px;line-height:1.35}
  .experience b{font-size:clamp(54px,5.8vw,64px)}
  .experience b span{font-size:25px}
  .hero-meta>p{font-size:11px;line-height:1.7;max-width:240px}

  .hero-visual{
    width:100%;
    min-width:0;
    height:100%;
    margin:0;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  .hero-stage{
    position:absolute;
    width:min(100%,clamp(350px,42vw,470px));
    height:clamp(500px,61vw,575px);
    right:clamp(0px,1vw,10px);
    transform:none;
    border-radius:30px 30px 108px 30px;
  }
  .hero-portrait{padding-top:18px}
  .hero-portrait img{
    width:auto;
    height:100%;
    max-width:94%;
    object-fit:contain;
    object-position:center bottom;
    transform:none;
  }
  .hero-word{font-size:clamp(105px,13vw,175px);left:7%;top:13%}
  .hero-orbit{opacity:.72}
  .orbit-one{width:clamp(440px,54vw,650px);height:clamp(210px,25vw,280px)}
  .orbit-two{width:clamp(340px,43vw,500px);height:clamp(165px,20vw,210px)}
  .hero-tag.top{right:0;top:12%;padding:11px 14px}
  .hero-tag.bottom{left:0;bottom:10%;padding:12px 14px}
  .scroll-mark{display:none}

  /* ---------- SECTION 2 / IDEAS ----------
     The center statement is brought closer to the orbit so the section
     reads as one editorial composition rather than a tall empty stage. */
  .ideas{
    padding-top:72px;
    padding-bottom:76px;
  }
  .section-intro{
    grid-template-columns:minmax(130px,.75fr) minmax(0,1.45fr) minmax(150px,.8fr);
    gap:clamp(18px,2.4vw,28px);
    align-items:end;
  }
  .section-intro h2{font-size:clamp(46px,6vw,70px)}
  .intro-copy{font-size:12px;line-height:1.75;max-width:255px}
  .ideas-stage{
    height:clamp(390px,43vw,455px);
    margin-top:28px;
  }
  .ideas-ring{
    width:min(60vw,455px);
    height:min(31vw,255px);
  }
  .ideas-center{width:142px;height:142px}
  .ideas-center span{font-size:25px}
  .idea-item{width:102px}
  .idea-item img{width:76px;height:76px;border-radius:20px}
  .idea-item span{font-size:8px;margin-top:8px}
  .idea-1{left:2%;top:16%}
  .idea-2{left:23%;top:0}
  .idea-3{right:23%;top:0}
  .idea-4{right:2%;top:16%}
  .idea-5{left:16%;bottom:1%}
  .idea-6{right:16%;bottom:0}

  /* ---------- ABOUT ----------
     Three deliberate zones: label / copy / art. The art is not allowed
     to create a second giant empty row. */
  .about{
    padding-top:76px;
    padding-bottom:78px;
  }
  .about-layout{
    display:grid;
    grid-template-columns:clamp(66px,8vw,88px) minmax(0,1fr) clamp(145px,18vw,180px);
    gap:clamp(26px,3.5vw,38px);
    align-items:start;
  }
  .about-aside{padding-top:6px}
  .about-aside .eyebrow{align-items:flex-start}
  .vertical-label{
    margin-top:72px;
    margin-left:-8px;
    font-size:8px;
  }
  .about-copy{min-width:0}
  .about-copy h2{
    font-size:clamp(48px,6.3vw,72px);
    line-height:.9;
    margin-bottom:25px;
    max-width:620px;
  }
  .about-copy .lead,
  .more-content p{
    font-size:14px;
    line-height:1.78;
    max-width:none;
  }
  .read-more{margin-top:26px}
  .about-art{
    grid-column:auto;
    height:250px;
    margin-top:18px;
    align-self:center;
  }
  .about-art-circle{
    width:clamp(145px,17vw,180px);
    height:clamp(145px,17vw,180px);
    right:0;
    top:6px;
  }
  .about-art-circle:before{width:calc(100% - 42px);height:calc(100% - 42px)}
  .about-art-circle span{font-size:clamp(34px,4vw,44px)}
  .about-art-word{left:0;bottom:18px;font-size:8px}
  .about-art-line{right:26px;bottom:0;height:78px}

  /* ---------- WHAT I OFFER ---------- */
  .offer{padding-top:78px;padding-bottom:80px}
  .offer-heading{
    grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);
    gap:22px;
    margin-bottom:34px;
  }
  .offer-heading>.eyebrow{
    white-space:nowrap;
    align-self:end;
    min-width:max-content;
  }
  .offer-heading h2{font-size:clamp(50px,6.4vw,76px)}
  .offer-heading>p:last-child{grid-column:2;max-width:300px;font-size:12px}
  .service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .service-card{min-height:400px;padding:24px;border-radius:28px 28px 64px 28px}
  .service-card:nth-child(2){border-radius:64px 28px 28px 28px}
  .service-card:nth-child(3){grid-column:1/-1;min-height:300px;border-radius:28px 64px 28px 28px}
  .service-main{padding:45px 0 30px}
  .service-main h3{font-size:clamp(36px,4.1vw,50px);margin-bottom:18px}
  .service-main p{font-size:12px;line-height:1.7;max-width:360px}
  .service-index{min-width:34px;height:28px}

  /* ---------- TRUST ---------- */
  .trust{min-height:0;padding-top:62px;padding-bottom:56px}
  .trust-heading{max-width:680px;margin-bottom:22px}
  .trust-heading h2{font-size:clamp(46px,6vw,68px)}
  .trust-heading p:not(.eyebrow){font-size:14px}
  .trust-composition{
    max-width:820px;
    min-height:235px;
    grid-template-columns:clamp(125px,16vw,160px) minmax(0,1fr) clamp(125px,16vw,160px);
    gap:18px;
  }
  .trust-art{height:215px}
  .trust-art img{width:145px;max-height:205px}
  .trust-core-mark{width:84px;height:84px}

  /* ---------- CONTACT ---------- */
  .contact{min-height:560px;padding-top:66px;padding-bottom:62px}
  .contact-big{font-size:clamp(56px,8vw,92px);max-width:760px}
  .contact-bg{width:45vw;height:500px;right:-2%;opacity:.18}
  .contact .email-orbit{right:5%;bottom:7%;width:140px;height:140px}

  /* ---------- FOOTER ---------- */
  .site-footer{
    min-height:166px;
    padding:30px 0;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    gap:20px;
  }
  .footer-left{font-size:12px}
  .footer-nav{gap:24px}
  .footer-nav a,.footer-nav a.termly-display-preferences:before{font-size:14px}
  .footer-socials{justify-self:end;gap:9px}
  .footer-social-icon{width:42px!important;height:42px!important}
}

/* Portrait tablets: still two-column, but the portrait becomes a tighter
   vertical panel instead of collapsing underneath the copy. */
@media (min-width:768px) and (max-width:899px){
  .hero-grid{
    grid-template-columns:minmax(0,45fr) minmax(0,55fr);
    gap:20px;
    height:clamp(560px,76vw,610px);
  }
  .hero h1{font-size:clamp(62px,8.9vw,78px)}
  .hero-meta{grid-template-columns:98px 1px minmax(120px,1fr);gap:13px}
  .experience b{font-size:54px}
  .hero-meta>p{font-size:10px}
  .hero-stage{
    width:min(100%,370px);
    height:clamp(475px,63vw,520px);
    border-radius:26px 26px 92px 26px;
  }
  .hero-tag.top{right:-1%;padding:9px 11px}
  .hero-tag.bottom{left:-1%;padding:10px 12px}
  .hero-tag.top b,.hero-tag.bottom b{font-size:9px}

  .section-intro{grid-template-columns:minmax(118px,.72fr) minmax(0,1.5fr);gap:18px}
  .intro-copy{grid-column:2;max-width:280px}
  .ideas-stage{height:400px}
  .ideas-ring{width:390px;height:225px}
  .idea-item{width:92px}
  .idea-item img{width:68px;height:68px}

  .about-layout{grid-template-columns:66px minmax(0,1fr) 142px;gap:18px}
  .about-copy h2{font-size:clamp(46px,6.8vw,60px)}
  .about-copy .lead,.more-content p{font-size:13px}
  .about-art{height:215px}
  .about-art-circle{width:138px;height:138px}
  .about-art-circle span{font-size:32px}

  .service-card{min-height:385px;padding:22px}
  .service-card:nth-child(3){min-height:290px}
  .service-main h3{font-size:clamp(34px,4.4vw,44px)}
}

/* Landscape tablets: give the hero a little more vertical presence while
   keeping the same two-zone relationship. */
@media (min-width:900px) and (max-width:1199px){
  .hero-grid{height:clamp(570px,61vw,640px)}
  .hero-stage{height:clamp(520px,56vw,575px)}
  .hero h1{font-size:clamp(74px,8vw,102px)}
}

/* =========================================================
   SERVICE CARD IMAGE INTEGRATION — FINAL
   The supplied artwork is treated as part of each card's composition,
   not as a generic image block.
   ========================================================= */
.service-card{
  isolation:isolate;
}
.service-card:before{
  z-index:0;
  pointer-events:none;
}
.service-top,
.service-media,
.service-main,
.service-cta{
  position:relative;
  z-index:2;
}
.service-media{
  width:100%;
  aspect-ratio:1 / .72;
  margin-top:18px;
  border:1px solid rgba(0,193,108,.12);
  border-radius:22px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 58%,rgba(0,193,108,.28),transparent 68%),
    rgba(4,9,8,.68);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.055),
    inset 0 0 0 1px rgba(0,193,108,.08),
    0 18px 45px rgba(0,0,0,.22);
  transition:transform .65s var(--ease),border-color .45s ease,box-shadow .65s var(--ease);
}
.service-media:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(145deg,rgba(0,193,108,.055),transparent 35%,rgba(0,193,108,.08));
  mix-blend-mode:screen;
}
.service-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.98) contrast(1.02);
  transform:scale(1.015);
  transition:transform .8s var(--ease),filter .6s ease;
}
.service-card:hover .service-media{
  transform:translateY(-3px);
  border-color:rgba(0,193,108,.3);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 22px 55px rgba(0,0,0,.28),
    0 0 32px rgba(0,193,108,.14);
}
.service-card:hover .service-media img{
  transform:scale(1.045);
  filter:saturate(1.04) contrast(1.04);
}
.service-main{
  margin-top:0;
  padding:25px 0 27px;
}
.service-main h3{
  margin-bottom:16px;
}
.service-cta{
  flex:0 0 auto;
}
.service-card:after{
  z-index:1;
}

/* Desktop: image-first editorial card rhythm. */
@media (min-width:1200px){
  .service-card{min-height:690px;padding:30px}
  .service-media{aspect-ratio:1 / .76;margin-top:20px}
  .service-main{padding-top:27px;padding-bottom:28px}
  .service-main h3{font-size:clamp(34px,3vw,48px)}
}

/* Tablet: keep the image prominent while giving the cards their own
   composition rather than shrinking the desktop card. */
@media (min-width:768px) and (max-width:1199px){
  .service-card{
    min-height:560px;
    padding:22px;
  }
  .service-media{
    aspect-ratio:1 / .74;
    margin-top:15px;
    border-radius:19px;
  }
  .service-main{
    padding:22px 0 23px;
  }
  .service-main h3{
    font-size:clamp(32px,3.8vw,46px);
    line-height:.9;
    margin-bottom:13px;
  }
  .service-main p{
    font-size:11.5px;
    line-height:1.65;
  }
  .service-cta{
    min-height:48px;
    font-size:9px;
  }
  .service-card:nth-child(3){
    min-height:360px;
  }
  .service-card:nth-child(3) .service-media{
    aspect-ratio:1.7 / 1;
    max-height:245px;
  }
}

@media (min-width:768px) and (max-width:899px){
  .service-card{min-height:520px;padding:20px}
  .service-media{aspect-ratio:1 / .78;border-radius:17px}
  .service-main{padding:20px 0 20px}
  .service-main h3{font-size:clamp(30px,4.1vw,39px)}
  .service-main p{font-size:11px}
  .service-card:nth-child(3){min-height:350px}
}

/* Mobile: preserve the one-column card system while keeping the artwork
   large enough to read without turning the cards into tall image panels. */
@media (max-width:767px){
  .service-card{min-height:0;padding:21px;border-radius:25px 25px 58px 25px}
  .service-card:nth-child(2){border-radius:58px 25px 25px 25px}
  .service-card:nth-child(3){border-radius:25px 58px 25px 25px}
  .service-media{aspect-ratio:1 / .74;margin-top:14px;border-radius:17px}
  .service-main{padding:21px 0 22px}
  .service-main h3{font-size:39px;line-height:.9;margin-bottom:14px}
  .service-main p{font-size:12px;line-height:1.72}
}

/* =========================================================
   SERVICE CARDS — COMPACT IMAGE-FIRST REFINEMENT
   Keep the supplied artwork prominent without making the cards
   unnecessarily tall. The card itself remains the visual frame.
   ========================================================= */
@media (min-width:1200px){
  .service-list{gap:16px;align-items:stretch}
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:590px;
    padding:24px;
  }
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    /* retain the existing editorial corner language */
  }
  .service-media{
    aspect-ratio:1.58 / 1;
    height:auto;
    margin-top:14px;
    border-radius:18px;
  }
  .service-media img{transform:scale(1.005)}
  .service-main{
    padding:20px 0 20px;
  }
  .service-main h3{
    font-size:clamp(34px,2.65vw,44px);
    line-height:.92;
    margin-bottom:13px;
  }
  .service-main p{
    font-size:12px;
    line-height:1.7;
    max-width:330px;
  }
  .service-cta{min-height:48px}
}

/* Tablet: compact three-card rhythm when there is enough width. */
@media (min-width:1000px) and (max-width:1199px){
  .service-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:500px;
    padding:19px;
  }
  .service-media{
    aspect-ratio:1.48 / 1;
    margin-top:12px;
    border-radius:16px;
  }
  .service-main{padding:17px 0 17px}
  .service-main h3{
    font-size:clamp(28px,3.05vw,38px);
    line-height:.92;
    margin-bottom:11px;
  }
  .service-main p{font-size:11px;line-height:1.62}
  .service-cta{min-height:44px;font-size:8.5px}
}

/* Smaller tablets: two balanced cards, with the third spanning the row. */
@media (min-width:768px) and (max-width:999px){
  .service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .service-card,
  .service-card:nth-child(2){
    min-height:485px;
    padding:18px;
  }
  .service-card:nth-child(3){
    grid-column:1 / -1;
    min-height:400px;
    padding:18px;
  }
  .service-media,
  .service-card:nth-child(3) .service-media{
    aspect-ratio:1.55 / 1;
    max-height:none;
    margin-top:11px;
    border-radius:15px;
  }
  .service-main,
  .service-card:nth-child(3) .service-main{padding:17px 0 16px}
  .service-main h3{font-size:clamp(28px,4vw,37px);line-height:.92;margin-bottom:10px}
  .service-main p{font-size:11px;line-height:1.62;max-width:340px}
  .service-cta{min-height:43px;font-size:8.5px}
}

/* =========================================================
   WHAT I OFFER — FINAL COMPACT CARD ART DIRECTION
   Rebalances the cards around the supplied artwork instead of
   letting the artwork create oversized vertical panels.
   ========================================================= */
.service-list{
  align-items:stretch;
}
.service-card{
  min-height:0 !important;
  height:auto;
  padding:22px;
  border-color:rgba(0,193,108,.13);
  border-radius:28px 28px 54px 28px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.014) 52%,rgba(0,193,108,.12));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 14px 35px rgba(0,0,0,.14);
}
.service-card:nth-child(2){
  border-radius:54px 28px 28px 28px;
}
.service-card:nth-child(3){
  border-radius:28px 54px 28px 28px;
}
.service-top{
  padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.065);
}
.service-index{
  font-size:11px;
  letter-spacing:.18em;
}
.service-tag{
  font-size:8px;
  padding:6px 9px;
  border-radius:999px;
  border:1px solid rgba(0,193,108,.12);
  background:rgba(0,193,108,.12);
}
.service-media{
  width:100%;
  height:190px;
  aspect-ratio:auto;
  margin-top:14px;
  border-radius:17px;
  padding:0;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 52%,rgba(0,193,108,.28),transparent 67%),
    rgba(4,9,8,.74);
}
.service-media img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  transform:scale(1.01);
}
.service-card:hover .service-media img{
  transform:scale(1.035);
}
.service-main{
  padding:17px 0 16px;
}
.service-main h3{
  font-size:clamp(31px,2.7vw,43px);
  line-height:.91;
  letter-spacing:-.065em;
  margin:0 0 11px;
}
.service-main p{
  font-size:11.5px;
  line-height:1.65;
  max-width:340px;
}
.service-cta{
  min-height:44px;
  padding:8px 0 0;
  font-size:9px;
}
.service-cta span{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(0,193,108,.1);
}
.service-card:after{
  font-size:110px;
  right:14px;
  bottom:-25px;
}

@media (min-width:1200px){
  .service-list{gap:16px}
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    padding:22px;
    min-height:0 !important;
  }
  .service-media{height:188px;margin-top:13px}
  .service-main{padding:17px 0 15px}
  .service-main h3{font-size:clamp(32px,2.55vw,42px);margin-bottom:10px}
  .service-main p{font-size:11.5px;line-height:1.65}
}

@media (min-width:1000px) and (max-width:1199px){
  .service-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    padding:18px;
    min-height:0 !important;
  }
  .service-media{height:166px;margin-top:11px;border-radius:15px}
  .service-main{padding:14px 0 13px}
  .service-main h3{font-size:clamp(27px,3vw,35px);margin-bottom:9px}
  .service-main p{font-size:10.5px;line-height:1.6}
  .service-cta{min-height:41px;font-size:8px}
}

@media (min-width:768px) and (max-width:999px){
  .service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .service-card,
  .service-card:nth-child(2){
    padding:17px;
    min-height:0 !important;
  }
  .service-card:nth-child(3){
    grid-column:1 / -1;
    padding:17px;
    min-height:0 !important;
  }
  .service-media,
  .service-card:nth-child(3) .service-media{
    height:155px;
    aspect-ratio:auto;
    margin-top:10px;
    border-radius:14px;
  }
  .service-main,
  .service-card:nth-child(3) .service-main{padding:13px 0 12px}
  .service-main h3{font-size:clamp(27px,4vw,36px);margin-bottom:8px}
  .service-main p{font-size:10.5px;line-height:1.6}
  .service-cta{min-height:40px;font-size:8px}
  .service-card:after{font-size:90px;right:10px;bottom:-18px}
}

@media (max-width:767px){
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:0 !important;
    padding:19px;
  }
  .service-media,
  .service-card:nth-child(3) .service-media{
    height:158px;
    margin-top:11px;
    border-radius:15px;
  }
  .service-main,
  .service-card:nth-child(3) .service-main{padding:15px 0 14px}
  .service-main h3{font-size:36px;line-height:.9;margin-bottom:10px}
  .service-main p{font-size:11.5px;line-height:1.68}
  .service-cta{min-height:42px;font-size:8.5px}
  .service-card:after{font-size:92px;right:10px;bottom:-20px}
}

/* =========================================================
   WHAT I OFFER — CIRCULAR SERVICE VISUALS
   Final art direction: compact cards with small floating image
   objects instead of large rectangular image panels.
   ========================================================= */
.service-card{
  min-height:430px !important;
  height:auto !important;
  padding:22px !important;
  overflow:hidden;
  border:1px solid rgba(0,193,108,.14);
  background:
    radial-gradient(circle at 82% 18%,rgba(0,193,108,.16),transparent 32%),
    linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.012) 55%,rgba(0,193,108,.12));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 16px 36px rgba(0,0,0,.16);
}
.service-card:hover{
  border-color:rgba(0,193,108,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 22px 45px rgba(0,0,0,.22),0 0 28px rgba(0,193,108,.08);
}
.service-top{
  padding:0 !important;
  border:0 !important;
  min-height:26px;
  align-items:center;
}
.service-index{
  font-size:11px !important;
  letter-spacing:.2em !important;
  color:var(--mint);
}
.service-tag{
  font-size:8px !important;
  letter-spacing:.2em !important;
  padding:5px 9px !important;
  border:1px solid rgba(0,193,108,.11) !important;
  background:rgba(0,193,108,.13) !important;
}
.service-media,
.service-card:nth-child(3) .service-media{
  position:relative;
  width:122px !important;
  height:122px !important;
  aspect-ratio:1 / 1 !important;
  flex:0 0 122px;
  margin:8px 7px 0 auto !important;
  padding:5px !important;
  border-radius:50% !important;
  border:1px solid rgba(0,193,108,.28) !important;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 45%,rgba(0,193,108,.23),transparent 62%),
    rgba(3,9,8,.9) !important;
  box-shadow:
    0 0 0 5px rgba(0,193,108,.07),
    0 0 22px rgba(0,193,108,.13),
    inset 0 1px 0 rgba(255,255,255,.07) !important;
  transition:transform .55s var(--ease),border-color .45s ease,box-shadow .55s var(--ease);
}
.service-media:before{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:50%;
  border:1px solid rgba(0,193,108,.08);
  pointer-events:none;
  z-index:2;
}
.service-media:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.07),transparent 32%,rgba(0,193,108,.08) 72%);
  mix-blend-mode:screen;
  pointer-events:none;
  z-index:2;
}
.service-media img{
  width:100% !important;
  height:100% !important;
  max-width:none;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:50%;
  transform:scale(1.015) !important;
  filter:saturate(.98) contrast(1.02);
  transition:transform .7s var(--ease),filter .5s ease;
}
.service-card:hover .service-media{
  transform:translateY(-3px) scale(1.02);
  border-color:rgba(0,193,108,.42) !important;
  box-shadow:
    0 0 0 5px rgba(0,193,108,.09),
    0 0 28px rgba(0,193,108,.18),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.service-card:hover .service-media img{
  transform:scale(1.045) !important;
  filter:saturate(1.04) contrast(1.04);
}
.service-main,
.service-card:nth-child(3) .service-main{
  margin-top:0 !important;
  padding:13px 0 16px !important;
}
.service-main h3{
  font-size:clamp(34px,2.7vw,43px) !important;
  line-height:.91 !important;
  letter-spacing:-.065em !important;
  margin:0 0 11px !important;
}
.service-main p{
  font-size:11.5px !important;
  line-height:1.68 !important;
  max-width:340px !important;
}
.service-cta{
  min-height:43px !important;
  padding-top:12px !important;
  font-size:9px !important;
}
.service-cta span{
  width:30px !important;
  height:30px !important;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(0,193,108,.08);
}
.service-card:after{
  font-size:105px !important;
  right:10px !important;
  bottom:-25px !important;
  opacity:.55;
}

@media (min-width:1200px){
  .service-list{gap:16px !important}
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:430px !important;
    padding:22px !important;
  }
  .service-media,
  .service-card:nth-child(3) .service-media{
    width:126px !important;
    height:126px !important;
    flex-basis:126px;
  }
  .service-main h3{font-size:clamp(35px,2.55vw,43px) !important}
}

@media (min-width:1000px) and (max-width:1199px){
  .service-list{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important}
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:410px !important;
    padding:18px !important;
  }
  .service-media,
  .service-card:nth-child(3) .service-media{
    width:108px !important;
    height:108px !important;
    flex-basis:108px;
    margin-top:7px !important;
    margin-right:5px !important;
  }
  .service-main{padding:11px 0 14px !important}
  .service-main h3{font-size:clamp(27px,3vw,35px) !important;margin-bottom:8px !important}
  .service-main p{font-size:10.5px !important;line-height:1.62 !important}
  .service-cta{min-height:40px !important;font-size:8px !important}
}

@media (min-width:768px) and (max-width:999px){
  .service-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important}
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:395px !important;
    padding:17px !important;
  }
  .service-card:nth-child(3){grid-column:1 / -1 !important}
  .service-media,
  .service-card:nth-child(3) .service-media{
    width:105px !important;
    height:105px !important;
    flex-basis:105px;
    margin-top:7px !important;
    margin-right:4px !important;
  }
  .service-main,
  .service-card:nth-child(3) .service-main{padding:11px 0 13px !important}
  .service-main h3{font-size:clamp(27px,4vw,36px) !important;margin-bottom:8px !important}
  .service-main p{font-size:10.5px !important;line-height:1.6 !important}
  .service-cta{min-height:39px !important;font-size:8px !important}
}

@media (max-width:767px){
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:0 !important;
    padding:19px !important;
  }
  .service-media,
  .service-card:nth-child(3) .service-media{
    width:100px !important;
    height:100px !important;
    flex-basis:100px;
    margin-top:8px !important;
    margin-right:3px !important;
  }
  .service-main,
  .service-card:nth-child(3) .service-main{padding:12px 0 14px !important}
  .service-main h3{font-size:36px !important;line-height:.9 !important;margin-bottom:9px !important}
  .service-main p{font-size:11.5px !important;line-height:1.68 !important}
  .service-cta{min-height:42px !important;font-size:8.5px !important}
}

/* =========================================================
   WHAT I OFFER — FINAL TYPOGRAPHY + CTA REFINEMENT
   Keep the compact card dimensions and circular service artwork.
   Refine only type scale, spacing and the CTA component structure.
   ========================================================= */
.service-main h3{
  font-size:clamp(36px,2.85vw,46px) !important;
  line-height:.94 !important;
  letter-spacing:-.06em !important;
  margin-bottom:12px !important;
}
.service-main p{
  font-size:12.25px !important;
  line-height:1.68 !important;
  max-width:345px !important;
}

/* The CTA is a real pill component: text and icon share one flex row. */
.service-cta{
  width:100%;
  min-height:46px !important;
  box-sizing:border-box;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px;
  margin-top:auto;
  padding:5px 7px 5px 16px !important;
  border:1px solid rgba(0,193,108,.13) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.018);
  color:#e9eeeb;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:9.5px !important;
  line-height:1 !important;
  white-space:nowrap;
  overflow:hidden;
  transition:background .35s ease,border-color .35s ease,transform .35s var(--ease),box-shadow .35s ease;
}
.service-cta:hover{
  background:rgba(0,193,108,.055);
  border-color:rgba(0,193,108,.28) !important;
  box-shadow:inset 0 0 0 1px rgba(0,193,108,.025),0 8px 24px rgba(0,0,0,.12);
  transform:translateY(-1px);
}
.service-cta > span{
  flex:0 0 31px;
  width:31px !important;
  height:31px !important;
  margin:0 !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  background:rgba(0,193,108,.11) !important;
  color:var(--mint) !important;
  font-size:15px !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  transition:background .3s ease,transform .3s ease,color .3s ease;
}
.service-cta:hover > span{
  transform:translate(2px,-2px);
  background:rgba(0,193,108,.16) !important;
}
.service-cta.disabled{
  color:#626c67 !important;
  background:rgba(255,255,255,.012) !important;
  border-color:rgba(255,255,255,.075) !important;
  box-shadow:none;
}
.service-cta.disabled > span{
  color:#626c67 !important;
  background:rgba(255,255,255,.035) !important;
}
.service-cta.disabled:hover{
  transform:none;
  background:rgba(255,255,255,.012) !important;
  border-color:rgba(255,255,255,.075) !important;
}

/* Preserve the existing compact circular-image direction at every breakpoint. */
@media (min-width:1200px){
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:430px !important;
  }
  .service-main{padding:14px 0 16px !important}
  .service-main h3{font-size:clamp(36px,2.75vw,46px) !important}
  .service-main p{font-size:12.25px !important}
}

@media (min-width:1000px) and (max-width:1199px){
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:410px !important;
  }
  .service-main{padding:12px 0 13px !important}
  .service-main h3{font-size:clamp(30px,3.05vw,38px) !important}
  .service-main p{font-size:11.25px !important;line-height:1.65 !important}
  .service-cta{min-height:43px !important;font-size:8.75px !important;padding-left:14px !important}
  .service-cta > span{flex-basis:29px;width:29px !important;height:29px !important;font-size:14px !important}
}

@media (min-width:768px) and (max-width:999px){
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:395px !important;
  }
  .service-main{padding:12px 0 12px !important}
  .service-main h3{font-size:clamp(29px,4.05vw,38px) !important}
  .service-main p{font-size:11px !important;line-height:1.64 !important}
  .service-cta{min-height:42px !important;font-size:8.5px !important;padding-left:13px !important}
  .service-cta > span{flex-basis:29px;width:29px !important;height:29px !important;font-size:14px !important}
}

@media (max-width:767px){
  .service-card,
  .service-card:nth-child(2),
  .service-card:nth-child(3){
    min-height:0 !important;
  }
  .service-main{padding:13px 0 14px !important}
  .service-main h3{font-size:38px !important;line-height:.92 !important;margin-bottom:10px !important}
  .service-main p{font-size:12px !important;line-height:1.68 !important}
  .service-cta{min-height:43px !important;font-size:9px !important;padding-left:14px !important}
  .service-cta > span{flex-basis:29px;width:29px !important;height:29px !important;font-size:14px !important}
}


/* =========================================================
   LEGAL PAGE — LONG-FORM BRAND EDITORIAL SYSTEM
   Keeps the site's dark identity while optimizing long-form
   reading width, hierarchy and responsive rhythm.
   ========================================================= */
.legal-page{background:var(--bg);color:var(--text);}
.legal-page .legal-header{width:min(100% - 64px,1320px);padding:24px 0;margin:0 auto;display:grid;grid-template-columns:1fr auto;align-items:center;}
.legal-page .legal-main{width:min(980px,calc(100% - 64px));margin:0 auto;padding:108px 0 92px;}
.legal-intro{padding-bottom:54px;border-bottom:1px solid rgba(0,193,108,.12);}
.legal-intro .eyebrow{margin-bottom:28px;}
.legal-page .legal-main h1{font-size:clamp(68px,9vw,124px);line-height:.86;letter-spacing:-.075em;font-weight:400;margin:0 0 20px;color:var(--text);}
.legal-updated-top{margin:0;color:#758079;font-size:11px;letter-spacing:.09em;text-transform:uppercase;}
.legal-content{padding-top:58px;}
.legal-section{padding:0 0 56px;margin:0 0 56px;border-bottom:1px solid rgba(255,255,255,.055);}
.legal-section:last-child{margin-bottom:0;}
.legal-section h2{margin:0 0 22px;font-size:clamp(27px,3vw,39px);line-height:1;letter-spacing:-.045em;font-weight:400;color:var(--text);}
.legal-section h3{margin:38px 0 13px;font-size:17px;line-height:1.25;letter-spacing:-.02em;font-weight:600;color:#dce5e0;}
.legal-section p,.legal-section li{font-size:15px;line-height:1.82;color:#9aa49e;}
.legal-section p{margin:0 0 18px;max-width:790px;}
.legal-section p:last-child{margin-bottom:0;}
.legal-section strong{color:#e8eeeb;font-weight:600;}
.legal-section ul{margin:0 0 21px;padding-left:21px;max-width:790px;}
.legal-section li{padding-left:7px;margin:5px 0;}
.legal-section li::marker{color:var(--mint);}
.legal-section a{color:var(--mint);text-decoration:none;border-bottom:1px solid rgba(0,193,108,.24);transition:color .25s ease,border-color .25s ease;}
.legal-section a:hover{color:#00C16C;border-color:rgba(0,193,108,.55);}
.legal-welcome{padding:28px 30px 31px;margin-bottom:62px;border:1px solid rgba(0,193,108,.11);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(0,193,108,.07));box-shadow:inset 0 1px 0 rgba(255,255,255,.03);}
.legal-welcome h2{font-size:clamp(31px,3.3vw,44px);}
.legal-contact{padding:31px 30px 34px;border:1px solid rgba(0,193,108,.12);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(0,193,108,.08));}
.legal-footer-note{display:flex;justify-content:space-between;gap:24px;padding-top:30px;color:#5e6862;font-size:10px;letter-spacing:.08em;text-transform:uppercase;}
.legal-footer-note p{margin:0;}
@media (max-width:1000px){
  .legal-page .legal-header{width:calc(100% - 44px);}
  .legal-page .legal-main{width:min(760px,calc(100% - 48px));padding-top:82px;padding-bottom:76px;}
  .legal-intro{padding-bottom:45px;}
  .legal-content{padding-top:45px;}
  .legal-section{padding-bottom:46px;margin-bottom:46px;}
  .legal-section p,.legal-section li{font-size:14px;line-height:1.78;}
  .legal-section h2{font-size:clamp(26px,4vw,35px);}
  .legal-footer-note{flex-direction:column;gap:9px;}
}
@media (max-width:600px){
  .legal-page .legal-header{width:calc(100% - 24px);padding:20px 0;}
  .legal-page .legal-main{width:calc(100% - 30px);padding:66px 0 60px;}
  .legal-intro{padding-bottom:34px;}
  .legal-intro .eyebrow{margin-bottom:21px;}
  .legal-page .legal-main h1{font-size:62px;line-height:.88;margin-bottom:17px;}
  .legal-updated-top{font-size:9px;}
  .legal-content{padding-top:34px;}
  .legal-section{padding-bottom:37px;margin-bottom:37px;}
  .legal-section h2{font-size:28px;line-height:.98;margin-bottom:18px;}
  .legal-section h3{font-size:15px;margin-top:30px;}
  .legal-section p,.legal-section li{font-size:13px;line-height:1.78;}
  .legal-section ul{padding-left:18px;}
  .legal-welcome,.legal-contact{padding:23px 20px 25px;border-radius:18px;}
  .legal-welcome{margin-bottom:42px;}
  .legal-footer-note{font-size:8px;}
}


/* Mobile-only orbit correction: keep Technology centered on the existing ring. */
@media (max-width:767px){
  .idea-4{
    right:3%;
    bottom:5%;
    transform:none;
  }
}


/* =========================================================
   REQUESTED TABLET POLISH — FINAL OVERRIDES
   Desktop and mobile are intentionally left untouched.
   ========================================================= */
@media (min-width:768px) and (max-width:1199px){
  /* ABOUT — give the vertical label its own breathing room. */
  .about-layout{
    grid-template-columns:120px minmax(0,1fr) clamp(145px,18vw,175px) !important;
    gap:clamp(34px,3.4vw,42px) !important;
    align-items:start !important;
  }
  .about-aside{
    min-width:0;
    padding-top:6px !important;
  }
  .vertical-label{
    margin-top:72px !important;
    margin-left:-8px !important;
    white-space:nowrap;
  }
  .about-copy{
    min-width:0;
  }
  .about-copy .lead,
  .more-content p{
    max-width:100% !important;
  }

  /* WHAT I OFFER — keep label, heading and description visually connected. */
  .offer-heading{
    grid-template-columns:110px minmax(0,1fr) !important;
    gap:20px !important;
    align-items:start !important;
    margin-bottom:24px !important;
  }
  .offer-heading > p:first-child{
    grid-column:1;
    grid-row:1 / span 2;
    padding-top:10px;
    white-space:nowrap;
    min-width:max-content;
  }
  .offer-heading h2{
    grid-column:2;
    grid-row:1;
    margin:0 !important;
    line-height:.88 !important;
  }
  .offer-heading > p:last-child{
    grid-column:2 !important;
    grid-row:2;
    max-width:430px !important;
    margin:12px 0 0 !important;
  }
  .service-list{
    margin-top:0 !important;
  }

  /* THIRD CARD — use the available full-width tablet space instead of
     forcing a tall card. The image and text share one compact row. */
  .service-card:nth-child(3){
    min-height:0 !important;
    height:auto !important;
  }
}

@media (min-width:768px) and (max-width:999px){
  .service-card:nth-child(3){
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 112px !important;
    grid-template-rows:auto auto auto !important;
    column-gap:18px !important;
    align-items:center !important;
  }
  .service-card:nth-child(3) .service-top{
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    width:100%;
  }
  .service-card:nth-child(3) .service-media{
    grid-column:2 !important;
    grid-row:2 !important;
    width:105px !important;
    height:105px !important;
    margin:0 0 0 auto !important;
    align-self:center !important;
  }
  .service-card:nth-child(3) .service-main{
    grid-column:1 !important;
    grid-row:2 !important;
    padding:10px 0 8px !important;
    min-width:0 !important;
  }
  .service-card:nth-child(3) .service-main h3{
    font-size:clamp(31px,4vw,39px) !important;
    margin-bottom:9px !important;
  }
  .service-card:nth-child(3) .service-main p{
    max-width:100% !important;
    font-size:11px !important;
    line-height:1.62 !important;
  }
  .service-card:nth-child(3) .service-cta{
    grid-column:1 / -1 !important;
    grid-row:3 !important;
    width:100%;
    margin-top:6px;
  }
}

@media (min-width:1000px) and (max-width:1199px){
  /* Third card should not stretch to the full row height. */
  .service-card:nth-child(3){
    min-height:0 !important;
    align-self:start !important;
  }
}

/* =========================================================
   MED GREEN BALANCE REFINEMENT
   Color/intensity refinement only — layout and behavior unchanged.
   ========================================================= */
.hero:before{
  background:radial-gradient(circle,rgba(0,193,108,.18) 0%,rgba(0,193,108,.055) 35%,transparent 70%);
}
.hero-stage{
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012) 48%,rgba(0,193,108,.045));
}
.hero-stage:before{background:radial-gradient(circle,rgba(0,193,108,.065),transparent 65%)}
.hero-word span{color:rgba(0,193,108,.045)}
.hero-tag.bottom i{box-shadow:0 0 10px rgba(0,193,108,.45)}

.ideas-ring{box-shadow:0 0 70px rgba(0,193,108,.055)}
.ideas-center{
  background:radial-gradient(circle at 32% 28%,rgba(0,193,108,.22),#0a1210 70%);
  box-shadow:0 0 45px rgba(0,193,108,.12);
}

.about{background:linear-gradient(180deg,transparent,rgba(0,193,108,.022),transparent)}
.about-art-circle{background:radial-gradient(circle,rgba(0,193,108,.12),transparent 65%)}
.about-art-line{background:linear-gradient(rgba(0,193,108,.65),transparent)}

.service-card{
  background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.014) 55%,rgba(0,193,108,.035));
}
.service-card:hover{
  background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.016) 55%,rgba(0,193,108,.06));
}
.service-card:before{background:linear-gradient(120deg,transparent 35%,rgba(0,193,108,.025),transparent 65%)}
.service-glow{background:rgba(0,193,108,.08);filter:blur(75px);opacity:.28}
.service-card:hover .service-glow{opacity:.5}
.service-media{
  background:radial-gradient(circle at 50% 52%,rgba(0,193,108,.10),transparent 67%),rgba(4,9,8,.74);
  box-shadow:0 0 0 5px rgba(0,193,108,.025),0 0 16px rgba(0,193,108,.05),inset 0 1px 0 rgba(255,255,255,.07)!important;
}
.service-media:after{background:linear-gradient(145deg,rgba(0,193,108,.018),transparent 35%,rgba(0,193,108,.025))}
.service-card:hover .service-media{box-shadow:0 0 0 5px rgba(0,193,108,.035),0 0 22px rgba(0,193,108,.07),inset 0 1px 0 rgba(255,255,255,.08)!important}

.trust:before{background:radial-gradient(circle at center,rgba(0,193,108,.055),transparent 48%)}
.trust-side:after{background:rgba(0,193,108,.16);filter:blur(50px)}
.trust-emblem{background:radial-gradient(circle at 35% 30%,rgba(0,193,108,.2),#0b1210 72%);box-shadow:0 0 35px rgba(0,193,108,.11)}
.trust-rule{opacity:.4}
.trust-core-mark{box-shadow:0 0 35px rgba(0,193,108,.12),inset 0 1px 0 rgba(255,255,255,.08)}

.contact:before{background:rgba(0,193,108,.10);filter:blur(115px)}
.email-orbit{background:radial-gradient(circle at 35% 30%,rgba(0,193,108,.14),rgba(7,14,12,.88) 70%);box-shadow:0 0 35px rgba(0,193,108,.09),inset 0 1px 0 rgba(255,255,255,.08)}
.email-orbit:hover{background:radial-gradient(circle at 35% 30%,rgba(0,193,108,.26),rgba(7,14,12,.88) 70%);box-shadow:0 0 50px rgba(0,193,108,.16),inset 0 1px 0 rgba(255,255,255,.1)}
.email-icon{box-shadow:0 10px 22px rgba(0,193,108,.08)}

.cursor-glow{background:radial-gradient(circle,rgba(0,193,108,.035),transparent 68%)}

/* Lower-intensity green ambient layers used by the existing responsive/art rules. */
@media (max-width:1000px){
  .service-card{background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.014) 55%,rgba(0,193,108,.035))}
}

/* FINAL COLOR REFINEMENT — Perspective + Service Cards only */
.trust:before{background:none !important;}
.trust-art:before{display:none !important;}
.trust-side:after{display:none !important;}
.trust-core:before{display:none !important;}

/* Keep Perspective elements clean; remove ambient green illumination only. */
.trust-core-line{background:rgba(0,193,108,.35) !important;}
.trust-core-mark{box-shadow:0 0 18px rgba(0,193,108,.07),inset 0 1px 0 rgba(255,255,255,.08) !important;}

/* Darken service-card surfaces while preserving the existing CTA exactly. */
.service-card{
  background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.012) 55%,rgba(0,193,108,.018)) !important;
}
.service-card:hover{
  background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.014) 55%,rgba(0,193,108,.03)) !important;
}
.service-card:before{background:linear-gradient(120deg,transparent 35%,rgba(0,193,108,.012),transparent 65%) !important;}
.service-glow{background:rgba(0,193,108,.045) !important;filter:blur(75px);opacity:.16 !important;}
.service-card:hover .service-glow{opacity:.24 !important;}
.service-media{
  background:radial-gradient(circle at 50% 52%,rgba(0,193,108,.055),transparent 67%),rgba(4,9,8,.78) !important;
}
.service-media:after{background:linear-gradient(145deg,rgba(0,193,108,.01),transparent 35%,rgba(0,193,108,.014)) !important;}

/* Final refinement: keep the About and Contact atmospheres predominantly dark. */
.about{
  background:linear-gradient(180deg,transparent,rgba(0,193,108,.025),transparent);
}
.contact:before{
  width:480px;
  height:480px;
  background:rgba(0,193,108,.12);
  filter:blur(105px);
}

/* Final precision dark-balance refinement: About + Contact only */
.about{background:linear-gradient(180deg,transparent,rgba(0,193,108,.008),transparent)}
.about-art-circle{background:radial-gradient(circle,rgba(0,193,108,.065),transparent 65%)}
.about-art-line{background:linear-gradient(rgba(0,193,108,.38),transparent)}
.contact:before{background:rgba(0,193,108,.035);filter:blur(115px)}
.contact-bg{opacity:.14}
.contact-bg:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.42);pointer-events:none}
.contact-bg img{filter:grayscale(1) contrast(1.1) brightness(.78)}
.contact .email-orbit{box-shadow:0 0 35px rgba(0,193,108,.07),inset 0 1px 0 rgba(255,255,255,.08)}
