/* Krafto-inspired MRDI visual system */
@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#fff;--bg-soft:#f5f6f4;--surface:#fff;--surface-2:#f3f5f2;--text:#28332f;--white:#17382f;--muted:#68716d;--line:#c8d8d1;--accent:#008c70;--H:'Manrope','Arial',sans-serif;--B:'DM Sans','Arial',sans-serif;--M:'DM Mono',monospace;--ink:#17382f;--cream:#f5f6f4;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:#fff}body{margin:0;background:#fff!important;color:var(--text)!important;font-family:var(--B);font-size:15px;line-height:1.7;overflow-x:hidden}::selection{background:#c8e8dc;color:#17382f}a{color:inherit}p{color:var(--muted)}header{position:sticky!important;top:0;z-index:50;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(14px);border-bottom:1px solid #e6ebe8!important;color:var(--ink)!important}header .header-inner{width:min(100% - 64px,1520px)!important;min-height:80px;margin:auto;padding:0!important;display:flex;align-items:center;justify-content:space-between}header .logo,header .brand{color:var(--ink)!important}header .logo img,header .brand img{max-height:42px;filter:none!important}header nav{display:flex;align-items:center;gap:clamp(14px,2.1vw,32px)}header nav a,header .nav-item>a{font:500 10px/1.4 var(--M)!important;letter-spacing:.045em;text-transform:uppercase;color:#32423b!important;text-decoration:none;transition:color .2s}header nav a:hover,header nav a.active{color:var(--accent)!important}header .nav-cta{padding:12px 18px!important;border:1px solid var(--ink)!important;border-radius:3px!important;background:var(--ink)!important;color:#fff!important;font:500 10px var(--M)!important;text-transform:uppercase;letter-spacing:.04em}header .dropdown{background:#fff!important;border:1px solid #dce6e1!important;box-shadow:0 14px 40px #1a45321a;padding:8px!important}header .dropdown a{padding:10px 12px!important;color:var(--text)!important}.hamburger{display:none;cursor:pointer}.hamburger span{background:var(--ink)!important}.topbar{background:var(--ink)!important;color:#e8f0ec!important;border:0;font:10px var(--M)!important;letter-spacing:.035em;padding:9px 4vw!important}.topbar a{color:white!important;text-decoration:none}
.wrap{width:min(100% - 64px,1380px)!important;margin-inline:auto}.section-pad{padding:clamp(80px,10vw,152px) 0!important}.sec-label,.page-hero .sec-label,.eyebrow,.episode-number,.hero-eyebrow{font:500 10px/1.5 var(--M)!important;letter-spacing:.12em;text-transform:uppercase;color:#63756d!important}.sec-label:before{content:"/ ";color:var(--accent)}.sec-title,h1,h2,h3,.page-title{font-family:var(--H)!important;color:var(--ink)!important;letter-spacing:-.065em!important}h1,h2,h3{line-height:1.04!important}.sec-title{font-size:clamp(36px,6vw,80px)!important;font-weight:600!important;max-width:1000px}.page-hero{padding:clamp(64px,9vw,132px) 0 42px!important;background:#f6f7f5!important;border:0!important}.page-hero-inner{width:min(100% - 64px,1380px)!important;margin:auto}.page-title{font-size:clamp(54px,10.5vw,142px)!important;line-height:.91!important;font-weight:700!important;max-width:1250px;margin:20px 0 24px!important;letter-spacing:-.085em!important}.page-hero p{max-width:660px;font-size:16px!important;color:var(--muted)!important}.page-hero:after{content:"";display:block;width:min(100% - 64px,1380px);height:1px;background:repeating-linear-gradient(90deg,#91b8a7 0 3px,transparent 3px 7px);margin:clamp(44px,7vw,90px) auto 0}
#hero{min-height:min(800px,calc(100svh - 80px));margin:0 auto!important;width:100%!important;max-width:none;border:0;border-radius:0;overflow:hidden;position:relative;background:#f4f6f4!important}#hero .hero-video-bg{position:absolute;inset:0}#hero .hero-video-bg video,#hero .hero-video-bg img{width:100%;height:100%;object-fit:cover;opacity:.8;filter:saturate(.82)}#hero .hero-overlay{background:linear-gradient(90deg,rgba(244,246,244,.96),rgba(244,246,244,.82) 45%,rgba(244,246,244,.08) 100%),linear-gradient(0deg,rgba(16,47,39,.1),transparent 55%)!important}#hero .hero-content{position:relative;z-index:1;width:min(100% - 72px,1380px)!important;margin:auto;min-height:min(800px,calc(100svh - 80px));display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(44px,7vw,96px) 0!important}#hero .hero-shell{max-width:1120px}#hero .hero-brand-mark{width:44px;height:44px;object-fit:contain;margin-bottom:24px}#hero .hero-eyebrow{margin:0 0 20px;color:#496058!important}#hero .hero-title{font-size:clamp(50px,9.5vw,136px)!important;line-height:.89!important;letter-spacing:-.09em!important;font-weight:700!important;color:var(--ink)!important;margin:0 0 25px!important;text-transform:none}#hero .hero-title em{font-style:normal;color:#668278!important}#hero .hero-sub{max-width:590px;color:#53625c!important;font-size:clamp(14px,1.25vw,17px)!important}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.hero-actions a,.btn-orange,.btn-primary,.btn-secondary,#cta a,.podcast-cta a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 21px!important;border-radius:3px!important;background:var(--ink)!important;color:white!important;border:1px solid var(--ink)!important;font:500 10px var(--M)!important;letter-spacing:.045em;text-transform:uppercase;text-decoration:none!important}.hero-actions a:nth-child(2),.btn-secondary{background:transparent!important;color:var(--ink)!important;border-color:#91a49b!important}.hero-note{font:10px var(--M)!important;color:#64736c!important}
#about,.section-pad,.podcast-home-grid{background:#fff!important;color:var(--text)!important}.about-grid,.split-grid{gap:clamp(28px,6vw,90px)!important;align-items:center}.about-img-wrap,.about-grid img,.project-card,.prog-card,.story-card,.success-card,.blog-card,.video-card,.snippet-card,.playlist-episode,.contact-card,.form-card,.info-card,.feature-card{border:1px solid #e0e9e4!important;border-radius:4px!important;background:#fff!important;overflow:hidden;box-shadow:none!important}.about-grid img,.about-img-wrap img{width:100%;height:100%;min-height:320px;object-fit:cover;filter:saturate(.92)}.prog-grid,.proj-grid,.success-grid,.snippet-grid,.blog-grid,.cards-grid{gap:16px!important}.prog-card,.story-card,.playlist-episode{padding:clamp(22px,3vw,42px)!important}.prog-card,.story-card,.playlist-episode{border-top:1px dashed #a8c2b6!important}.proj-img,.project-card img,.prog-card img,.proj-grid img,.success-grid img{border-radius:2px!important;object-fit:cover}.proj-title{font:600 clamp(18px,2.3vw,29px)/1.15 var(--H)!important;letter-spacing:-.045em;color:var(--ink)!important}.section-pad .wrap>p,.about-grid p{max-width:750px}.social-row a,.footer-top a{color:var(--muted)!important}
#cta{margin:22px auto!important;width:calc(100% - 44px)!important;max-width:1800px;padding:clamp(44px,8vw,112px)!important;border:1px solid #d7e3dd!important;border-radius:4px!important;background:#f2f6f3!important;text-align:left!important}#cta h2{font-size:clamp(40px,8vw,98px)!important;line-height:.94!important;font-weight:700!important;letter-spacing:-.08em!important;max-width:1000px}footer{background:#f6f7f5!important;color:var(--text)!important;border-top:1px solid #e0e8e3!important}footer .footer-top,footer .footer-bottom{border-color:#cfddd5!important}footer p,footer small{color:var(--muted)!important}footer h3{font:500 11px var(--M)!important;text-transform:uppercase;letter-spacing:.08em!important;color:var(--ink)!important}.footer-bottom{font:10px var(--M)!important;color:var(--muted)!important}input,textarea,select{background:#fff!important;color:var(--ink)!important;border:1px solid #cad8d0!important;border-radius:3px!important;padding:14px!important}label{color:#42564c!important;font:10px var(--M)!important;text-transform:uppercase;letter-spacing:.07em}button{cursor:pointer}.podcast-intro,.podcast-cta{border:1px solid #dce7e1!important;border-radius:4px!important;background:#f7f8f6!important;padding:clamp(24px,5vw,64px)!important}.podcast-title-video,.snippet-card video,video{max-width:100%;border-radius:3px}.episode-number{color:#657970!important}.snippet-card{padding:12px!important}.snippet-card h3,.playlist-episode h3{margin-top:18px!important}.playlist-episode a{font:10px var(--M)!important;text-transform:uppercase;color:var(--accent)!important}.marquee,.ticker{color:#71877d!important}
/* Keep inline legacy blocks aligned with the new light palette */
main,article,section{color:var(--text)}[style*="background:#fff"],[style*="background: #fff"],[style*="background: #ffffff"],[style*="background:#ffffff"],[style*="background-color: #fff"]{background-color:#fff!important}[style*="color:#1"],[style*="color: #1"],[style*="color:#0"],[style*="color: #0"]{color:var(--text)!important}.page-hero .page-title{color:var(--ink)!important}.page-title em,.sec-title em{color:#668278!important}table{border-color:#cad8d0!important}td,th{border-color:#cad8d0!important;color:var(--text)!important}.btn-orange:hover,.btn-primary:hover,.nav-cta:hover,#cta a:hover{background:#31594d!important;transform:translateY(-2px)}
@media(max-width:1050px){header .header-inner{width:calc(100% - 40px)!important}.hamburger{display:flex!important;flex-direction:column;gap:5px;padding:10px}header nav{display:none!important;position:absolute;left:0;right:0;top:100%;padding:18px 22px 24px!important;background:rgba(255,255,255,.99)!important;border-bottom:1px solid #dce6e1;align-items:stretch!important;gap:0!important;max-height:calc(100svh - 75px);overflow:auto}header nav.open{display:flex!important;flex-direction:column!important}header nav .nav-item{padding:11px 0;border-bottom:1px solid #e2ebe6}header nav .dropdown{position:static!important;display:none;padding-left:15px!important}header nav .nav-item:hover .dropdown,header nav .nav-item:focus-within .dropdown{display:block}header .nav-cta{align-self:flex-start;margin-top:14px}}
@media(max-width:700px){.wrap,.page-hero-inner{width:calc(100% - 36px)!important}.page-hero{padding-top:58px!important}.page-hero:after{width:calc(100% - 36px)}#hero{min-height:78svh}#hero .hero-content{width:calc(100% - 38px)!important;min-height:78svh;padding:38px 0!important}#hero .hero-overlay{background:linear-gradient(90deg,rgba(244,246,244,.96),rgba(244,246,244,.7) 70%,rgba(244,246,244,.35))!important}#hero .hero-title{font-size:clamp(45px,13vw,76px)!important}.section-pad{padding:68px 0!important}.about-grid,.split-grid{grid-template-columns:1fr!important}.about-grid img,.about-img-wrap img{min-height:260px}.prog-grid,.proj-grid,.success-grid,.snippet-grid{grid-template-columns:1fr!important}.page-title{font-size:clamp(48px,14vw,86px)!important}#cta{width:calc(100% - 20px)!important;padding:30px 22px!important}.hero-actions a{min-height:42px;padding:0 15px!important;font-size:9px!important}footer .footer-top{grid-template-columns:1fr 1fr!important;gap:28px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Keyboard, touch and form affordances */
:focus-visible{outline:3px solid var(--accent)!important;outline-offset:3px!important}
.skip-link{position:fixed;top:10px;left:10px;z-index:1000;transform:translateY(-160%);padding:12px 16px;background:var(--ink);color:#fff;border-radius:3px;font:500 11px var(--M);text-decoration:none}
.skip-link:focus{transform:translateY(0)}
main,[id]{scroll-margin-top:96px}
header nav a,header .nav-item>a,.hero-actions a,.btn-orange,.btn-primary,.btn-secondary,#cta a,.podcast-cta a,.submit-btn{min-height:44px}
header .nav-item>a{display:inline-flex;align-items:center}
.hamburger{min-width:44px;min-height:44px;align-items:center;justify-content:center}
button,.btn-orange,.btn-primary,.btn-secondary,.submit-btn,.nav-cta{transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}
button:hover,.submit-btn:hover{filter:brightness(.93)}
.form-group label{display:inline-block;margin-bottom:7px;cursor:pointer}
.form-control:focus,input:focus,select:focus,textarea:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(0,140,112,.12)!important;outline:0!important}
[data-href]{cursor:pointer;transition:transform .2s ease,border-color .2s ease}
[data-href]:hover{transform:translateY(-3px);border-color:#9fbeaf!important}
img,video{height:auto}
@media(max-width:1050px){header nav a,header .nav-item>a{display:flex;align-items:center;min-height:44px}header nav .dropdown a{min-height:42px}}
@media(max-width:700px){input,select,textarea{font-size:16px!important}.hero-actions{gap:8px}.hero-actions a{flex:1 1 auto}.form-3col,.form-2col,.form-row{grid-template-columns:1fr!important}}

/* Krafto layout system: shared chrome and responsive section patterns */
.topbar{display:none!important}
header .header-inner{min-height:82px!important;width:calc(100% - 64px)!important;max-width:1500px!important}
header nav{display:none!important;position:fixed!important;inset:82px 0 0!important;z-index:80;background:#f5f7f5!important;padding:clamp(30px,8vw,120px) max(32px,calc((100vw - 1250px)/2))!important;overflow:auto;align-items:flex-start!important;justify-content:center!important;gap:0!important;flex-direction:column!important}
header nav.open{display:flex!important}
header nav .nav-item{width:min(100%,900px);border-bottom:1px solid #d6e0da;padding:6px 0}
header nav .nav-item>a{display:flex!important;min-height:clamp(50px,7vw,88px)!important;font:600 clamp(24px,4.2vw,58px)/1 var(--H)!important;letter-spacing:-.06em!important;text-transform:none!important;color:var(--ink)!important}
header nav .dropdown{display:flex!important;position:static!important;box-shadow:none!important;border:0!important;background:transparent!important;padding:0 0 12px 20px!important;gap:8px}
header nav .dropdown a{min-height:38px!important;border:1px solid #c9d8d0!important;padding:10px 14px!important;border-radius:2px!important;font:500 10px var(--M)!important;text-transform:uppercase}
header nav>.nav-cta{margin-top:22px;min-height:48px!important;display:inline-flex;align-items:center}
.hamburger{display:flex!important;position:relative;z-index:100;flex-direction:column;gap:5px;padding:10px!important;width:46px;height:46px;align-items:center;justify-content:center;background:#f4f6f4;border:1px solid #d9e2dd;border-radius:50%}
.hamburger span{height:2px;width:18px;border-radius:2px;transition:transform .2s,opacity .2s}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
#hero{display:flex!important;flex-direction:column!important;min-height:0!important;padding:0 clamp(22px,4.5vw,70px) clamp(24px,3vw,44px)!important;background:#f4f6f4!important}
#hero .hero-content{width:min(100%,1380px)!important;min-height:0!important;padding:clamp(34px,5vw,72px) 0 clamp(30px,4vw,54px)!important;margin:auto;display:block!important}
#hero .hero-meta{display:grid;grid-template-columns:.85fr 1.3fr .95fr;gap:clamp(20px,5vw,78px);align-items:start;margin-bottom:clamp(52px,8vw,112px)}
#hero .hero-location{display:flex;flex-direction:column;gap:3px;font:500 11px/1.65 var(--M);color:#68746e}
#hero .hero-location .hero-batch{margin-top:20px;font:500 10px/1.8 var(--M);text-transform:uppercase;letter-spacing:.03em}
#hero .hero-location a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
#hero .hero-meta .hero-sub{margin:0;max-width:540px;font-size:clamp(15px,1.45vw,19px)!important;line-height:1.65!important;color:#3f4b45!important}
#hero .hero-stats{display:flex;flex-direction:column}
#hero .hero-stats>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px dashed #a8c6b8}
#hero .hero-stats span{font-size:13px;color:#53635b}
#hero .hero-stats strong{font:500 14px var(--M);color:var(--ink)}
#hero .hero-shell{max-width:none}
#hero .hero-eyebrow{margin:0 0 13px!important}
#hero .hero-title{font-size:clamp(55px,10vw,148px)!important;line-height:.9!important;max-width:1260px;letter-spacing:-.09em!important;font-weight:700!important;margin:0 0 clamp(24px,3vw,42px)!important}
#hero .hero-title em{color:#315f4e!important}
#hero .hero-actions{margin:0!important}
#hero .hero-media{position:relative;width:min(100%,1380px);height:clamp(310px,50vw,650px);margin:0 auto;overflow:hidden;background:#ccebdc}
#hero .hero-media video{display:block;width:100%;height:100%!important;max-height:none;object-fit:cover;object-position:center 42%;filter:saturate(.85)}
#hero .hero-media-caption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:20px;padding:15px 20px;background:linear-gradient(transparent,rgba(12,39,30,.66));color:white;font:500 9px var(--M);letter-spacing:.08em;text-transform:uppercase}
.section-index{display:flex;align-items:center;gap:10px;margin-bottom:24px;color:#67766e;font:500 10px var(--M);letter-spacing:.08em;text-transform:uppercase}
.section-index i{font-style:normal;color:#a1b4a9}
.client-band{padding:clamp(52px,8vw,112px) 0;background:#fff}
.client-band-heading,.blog-showcase-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0 0 30px}
.client-band-heading h2,.faq-showcase h2,.blog-showcase h2,.contact-showcase h2{font-size:clamp(36px,5.5vw,72px)!important;font-weight:600!important;line-height:.98!important;margin:0;letter-spacing:-.075em!important}
.client-band-heading>span{font:10px var(--M);color:#6e7973;text-transform:uppercase;letter-spacing:.08em}
.client-logos{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #dbe5df;border-bottom:1px solid #dbe5df}
.client-logos span{display:flex;align-items:center;justify-content:center;min-height:88px;padding:16px;text-align:center;font:600 clamp(12px,1.2vw,16px) var(--H);letter-spacing:-.04em;color:#53625b;border-right:1px dashed #c8d8d0}
.client-logos span:last-child{border-right:0}
.capability-strip{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.capability-strip span{padding:8px 12px;border:1px solid #d6e2db;color:#53635b;font:9px var(--M);text-transform:uppercase;letter-spacing:.035em}
section.section-pad{counter-increment:site-section;scroll-margin-top:96px}
body{counter-reset:site-section}
.section-pad .sec-label{display:flex;align-items:center;gap:7px;font:500 10px var(--M)!important;letter-spacing:.08em;text-transform:uppercase;color:#65776d!important}
.section-pad .sec-label:before{content:counter(site-section,decimal-leading-zero) "  |"!important;color:var(--accent)!important}
#programs{background:#f5f7f5!important}
#programs .prog-grid{display:grid;grid-template-columns:1fr!important;gap:14px!important;margin-top:46px}
#programs .prog-card{display:grid;grid-template-columns:1.15fr .85fr;min-height:340px;border:1px solid #dce6e0!important;background:#fff!important}
#programs .prog-img{grid-column:2;grid-row:1;min-height:100%;overflow:hidden}
#programs .prog-img img{width:100%;height:100%!important;min-height:340px;object-fit:cover}
#programs .prog-body{grid-column:1;grid-row:1;padding:clamp(24px,4vw,54px)!important;align-self:center}
#programs .prog-tag{display:inline-flex;padding:7px 10px;border:1px solid #d3e1d9!important;color:#39705a!important;font:500 9px var(--M)!important;text-transform:uppercase;letter-spacing:.08em}
#programs .prog-body h3{font-size:clamp(25px,3vw,40px)!important}
#projects{background:#fff!important}
#projects .proj-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
#projects .proj-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
#projects .proj-card{min-width:0;border:0!important;background:transparent!important;overflow:hidden}
#projects .proj-card.big{grid-column:1 / -1}
#projects .proj-thumb{position:relative;height:clamp(280px,35vw,500px);overflow:hidden;background:#eef2ef}
#projects .proj-card.big .proj-thumb{height:clamp(360px,54vw,690px)}
#projects .proj-thumb img{width:100%;height:100%!important;object-fit:cover;transition:transform .45s ease}
#projects .proj-card:hover .proj-thumb img{transform:scale(1.025)}
#projects .proj-overlay{background:linear-gradient(0deg,rgba(9,31,23,.78),transparent 58%)!important}
#projects .proj-info{left:clamp(20px,4vw,52px)!important;right:clamp(20px,4vw,52px)!important;bottom:clamp(20px,4vw,52px)!important}
#projects .proj-num{font:500 9px var(--M)!important;letter-spacing:.12em;color:#dcece3!important}
#projects .proj-title{font-size:clamp(24px,4vw,52px)!important;color:white!important}
#projects .proj-sub{color:#ecf2ee!important}
.contact-showcase{background:#f5f7f5!important}
.contact-showcase-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(35px,8vw,120px);align-items:center}
.contact-showcase-form{padding:clamp(22px,4vw,52px);background:#fff;border:1px solid #dce6e0}
.contact-showcase-mark{width:46px;height:46px;object-fit:contain;margin-bottom:24px}
.contact-showcase-form h2{font-size:clamp(30px,4vw,52px)!important;margin:0 0 28px}
.contact-showcase-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.contact-showcase-form .form-group{margin-bottom:16px}
.contact-showcase-form .form-control{width:100%;min-height:48px}
.contact-showcase-form textarea{min-height:110px}
.contact-showcase-form .submit-btn{width:100%;min-height:50px;background:var(--ink)!important;color:white!important;border:0!important}
.form-note{font-size:11px;margin:12px 0 0;text-align:center}
.contact-showcase-copy>p{max-width:500px;font-size:16px}
.contact-points{margin:32px 0;border-top:1px solid #d4e0d9}
.contact-points a{display:flex;flex-direction:column;gap:5px;padding:16px 0;border-bottom:1px dashed #b7cbbf;text-decoration:none}
.contact-points span{font:9px var(--M);text-transform:uppercase;letter-spacing:.09em;color:#78857e}
.contact-points strong{font:500 clamp(15px,1.8vw,21px) var(--H);color:var(--ink);overflow-wrap:anywhere}
.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font:500 10px var(--M);text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border-bottom:1px solid #9bb4a7;padding-bottom:7px}
#success{background:#fff!important}
#success .success-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-top:42px}
#success .story-card{padding:clamp(24px,3.6vw,48px)!important;border:1px solid #dce6e0!important;background:#f7f8f6!important;min-height:220px}
#success .story-card h3{font-size:clamp(22px,2.8vw,34px)!important}
#podcast{padding:clamp(70px,10vw,140px) 0;background:#f4f6f4}
#podcast .podcast-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,6vw,80px);align-items:center}
#podcast .podcast-home-video{width:100%;height:clamp(280px,35vw,470px);object-fit:cover;background:#e8efea}
#socials{background:#fff!important}
#socials .social-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:30px}
#socials .social-card{min-height:130px;padding:20px!important;border:1px solid #dce6e0!important;background:#f7f8f6!important;text-decoration:none}
#cta{width:100%!important;max-width:none!important;margin:0!important;border:0!important;border-top:1px solid #dce6e0!important;border-radius:0!important;background:#eaf3ed!important;padding:clamp(56px,9vw,128px) max(32px,calc((100vw - 1380px)/2))!important}
#cta h2{font-size:clamp(45px,8vw,112px)!important;max-width:1000px}
#cta>div{max-width:1380px;margin:auto}
#cta .subscribe-row{max-width:460px;display:flex;gap:8px;margin-top:26px}
#cta .subscribe-row input{flex:1;min-width:0}
.faq-showcase{background:#f5f7f5!important}
.faq-showcase-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(35px,9vw,130px);align-items:start}
.faq-showcase-grid>div:first-child>p{max-width:390px;margin:20px 0 25px}
.faq-list details{border-top:1px dashed #a8c6b8;padding:0}
.faq-list details:last-child{border-bottom:1px dashed #a8c6b8}
.faq-list summary{list-style:none;position:relative;padding:20px 42px 20px 0;color:var(--ink);font:600 clamp(16px,1.6vw,20px)/1.35 var(--H);cursor:pointer}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:'+';position:absolute;right:5px;top:16px;font:400 24px var(--B);color:var(--accent);transition:transform .2s}
.faq-list details[open] summary:after{transform:rotate(45deg)}
.faq-list details p{margin:0;padding:0 35px 22px 0;max-width:660px}
.blog-showcase{background:#fff!important}
.blog-showcase-heading{margin:20px 0 34px}
.blog-showcase-heading p{margin:13px 0 0}
.blog-feature-card{display:grid;grid-template-columns:.9fr 1.1fr;grid-template-rows:auto 1fr auto;column-gap:clamp(24px,5vw,70px);align-items:center;text-decoration:none;border-top:1px solid #dce6e0;border-bottom:1px solid #dce6e0;padding:20px 0}
.blog-feature-card img{grid-column:1;grid-row:1 / 4;width:100%;aspect-ratio:1.35;object-fit:cover}
.blog-feature-meta{font:9px var(--M);letter-spacing:.08em;text-transform:uppercase;color:#668077}
.blog-feature-card h3{font-size:clamp(25px,4vw,52px)!important;align-self:start;margin:20px 0!important}
.blog-feature-card .text-link{justify-self:start}
footer{padding-top:50px}
@media(max-width:760px){
  header .header-inner{width:calc(100% - 36px)!important;min-height:70px!important}
  header nav{inset:70px 0 0!important}
  #hero{padding:0 16px 18px!important}
  #hero .hero-content{padding:26px 0 30px!important}
  #hero .hero-meta{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:38px}
  #hero .hero-meta .hero-sub{grid-column:1 / -1;grid-row:2}
  #hero .hero-stats{grid-column:2;grid-row:1}
  #hero .hero-location .hero-batch{margin-top:10px}
  #hero .hero-title{font-size:clamp(44px,12.4vw,78px)!important}
  #hero .hero-media{height:58vw;min-height:250px}
  #hero .hero-media-caption{font-size:8px;padding:12px}
  .client-band{padding:56px 0}
  .client-band-heading,.blog-showcase-heading{align-items:flex-start;flex-direction:column}
  .client-logos{grid-template-columns:repeat(2,1fr)}
  .client-logos span{min-height:64px;border-bottom:1px dashed #c8d8d0}
  .client-logos span:nth-child(2n){border-right:0}
  .client-logos span:last-child{grid-column:1 / -1;border-bottom:0}
  #programs .prog-card{grid-template-columns:1fr;grid-template-rows:220px auto}
  #programs .prog-img{grid-column:1;grid-row:1}
  #programs .prog-img img{min-height:220px}
  #programs .prog-body{grid-column:1;grid-row:2}
  #projects .proj-header{align-items:flex-start;flex-direction:column}
  #projects .proj-grid{grid-template-columns:1fr!important}
  #projects .proj-card.big{grid-column:auto}
  #projects .proj-card.big .proj-thumb{height:68vw;min-height:280px}
  #projects .proj-thumb{height:65vw;min-height:250px}
  .contact-showcase-grid,.faq-showcase-grid,#podcast .podcast-home-grid{grid-template-columns:1fr}
  #success .success-grid{grid-template-columns:1fr!important}
  #socials .social-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  #socials .social-card:last-child{grid-column:1 / -1}
  .blog-feature-card{grid-template-columns:1fr;grid-template-rows:auto;gap:12px}
  .blog-feature-card img,.blog-feature-card h3,.blog-feature-meta,.blog-feature-card .text-link{grid-column:1;grid-row:auto}
}

/* Keep the video caption directly after the hero video rather than on top of it. */
#hero+.hero-media-caption{position:relative;inset:auto;z-index:1;width:min(calc(100% - 64px),1380px);margin:0 auto;padding:18px 0;background:transparent;color:#52645b;pointer-events:auto;font:500 9px var(--M);letter-spacing:.08em;text-transform:uppercase}
@media(max-width:700px){#hero+.hero-media-caption{width:calc(100% - 36px);padding:14px 0;display:grid;gap:4px}}

/* Program tiles now end with the podcast feature in the scroll stack. */
#programs .podcast-panel{grid-template-columns:1fr 1fr;align-items:stretch;padding:0!important;overflow:hidden}
#programs .podcast-panel .podcast-home-copy{align-self:center;padding:clamp(22px,4vw,48px)}
#programs .podcast-panel .sec-title{font-size:clamp(27px,3.5vw,48px)!important;line-height:1!important;margin:8px 0 15px}
#programs .podcast-panel .podcast-home-copy>p:not(.sec-label){font-size:14px}
#programs .podcast-panel .podcast-home-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
#programs .podcast-panel .podcast-home-actions a{min-height:44px;padding:0 14px!important;font-size:9px!important}
#programs .podcast-panel video{width:100%;height:100%!important;min-height:360px;max-height:none;object-fit:cover;border-radius:0}

/* Every navigable tile uses one circular up-right action in its center. */
[data-href]{position:relative;cursor:default!important;transition:border-color .2s ease}
[data-href]:hover{transform:none!important;border-color:#9fbeaf!important}
.tile-action{position:absolute;z-index:20;top:50%;left:50%;display:grid;place-items:center;width:58px;height:58px;padding:0!important;border:1px solid rgba(255,255,255,.82)!important;border-radius:50%!important;background:#17382f!important;color:#fff!important;box-shadow:0 8px 24px rgba(8,32,24,.25);opacity:.94;transform:translate(-50%,-50%) scale(.94);transition:transform .2s ease,background .2s ease,box-shadow .2s ease,opacity .2s ease}
.tile-action svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.has-tile-action:hover .tile-action,.tile-action:focus-visible{opacity:1;background:#008c70!important;box-shadow:0 12px 32px rgba(8,32,24,.34);transform:translate(-50%,-50%) scale(1)}
.has-tile-action>.proj-thumb .proj-play,.has-tile-action>div>.pplay{display:none!important}
.has-tile-action>.tile-action{cursor:pointer}
.social-card.has-tile-action{display:block;min-height:100%}
@media(max-width:760px){
  #programs .podcast-panel{grid-template-columns:1fr;grid-template-rows:auto auto}
  #programs .podcast-panel video{grid-row:1;min-height:230px;height:230px!important}
  #programs .podcast-panel .podcast-home-copy{grid-row:2}
  .tile-action{width:52px;height:52px}
}

/* Hero video and its introductory copy form a single overlapping feature. */
#hero{height:auto!important;min-height:0!important;padding:0!important;overflow:visible!important;background:#112c24!important}
#hero:before{display:none!important}
#hero .hero-media{position:relative!important;inset:auto!important;z-index:0;width:100%!important;height:clamp(330px,54vw,700px)!important;max-width:none!important;margin:0!important}
#hero .hero-media video{display:block;width:100%;height:100%!important;object-fit:cover;object-position:center 43%;opacity:1;filter:saturate(.9)}
#hero+.hero-media-caption{width:min(calc(100% - 64px),1380px);margin:0 auto;padding:17px 0;color:#52645b;font:500 9px var(--M);letter-spacing:.08em;text-transform:uppercase}

/* Give the outbound playlist action a centered, readable label. */
#programs .podcast-home-actions a{display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.35;white-space:normal}
#programs .podcast-home-actions a.btn-outline{min-width:205px}

/* Keep arrow actions clear of text on story, social and journal tiles. */
#success .story-card>.tile-action,.blog-feature-card>.tile-action,#socials .social-card>.tile-action{top:18px;right:18px;left:auto;transform:none}
#success .story-card:hover>.tile-action,.blog-feature-card:hover>.tile-action,#socials .social-card:hover>.tile-action{transform:scale(1)}
#socials{padding:clamp(64px,8vw,110px) 0!important;overflow:visible!important}
#socials .social-row{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:34px}
#socials .social-card{position:relative;min-height:210px!important;padding:30px 18px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:visible!important}
#socials .social-card .si{flex:0 0 auto;margin-bottom:14px}
#socials .social-card h4{margin:0 0 8px;font-size:18px;line-height:1.2}
#socials .social-card>span{display:block;max-width:180px;font:10px/1.6 var(--M);letter-spacing:.035em;text-transform:uppercase}
@media(max-width:760px){
  #hero+.hero-media-caption{width:calc(100% - 36px)}
  #socials .social-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  #socials .social-card{min-height:190px!important}
  #socials .social-card:last-child{grid-column:1/-1}
}
#podcast{counter-increment:site-section}
body{counter-reset:site-section 1}
#about.section-pad,#socials.section-pad{counter-increment:none}
#about .sec-label:before,#socials .sec-label:before{content:none!important}
body{counter-reset:site-section}
body:has(#clients){counter-reset:site-section 1}

/* User-requested homepage refinements */
.isac-launch{counter-increment:site-section;background:#f5f7f5;border-block:1px solid #dce6e0;padding:clamp(22px,3vw,38px) 0}
.isac-launch-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.isac-launch-inner>span{font:500 10px var(--M);text-transform:uppercase;letter-spacing:.07em;color:#65776d}
.isac-launch-inner>span:before{content:counter(site-section,decimal-leading-zero) "  |  ";color:var(--accent)}
.isac-launch-inner>a{display:inline-flex;align-items:center;gap:22px;min-height:48px;padding:0 20px;background:var(--ink);color:white;text-decoration:none;font:500 10px var(--M);letter-spacing:.05em;text-transform:uppercase}

/* Glass information panel over the full-bleed workshop video */
#hero{height:min(850px,calc(100svh - 82px));min-height:650px;padding:0!important;display:block!important;background:#17382f!important}
#hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(11,34,27,.74) 0%,rgba(11,34,27,.42) 58%,rgba(11,34,27,.08) 100%),linear-gradient(0deg,rgba(11,34,27,.5),transparent 46%);pointer-events:none}
#hero .hero-media{position:absolute;inset:0;z-index:0;width:100%;height:100%;max-width:none;margin:0;background:#16382f}
#hero .hero-media video{width:100%;height:100%!important;object-fit:cover;object-position:center 43%;opacity:.78;filter:saturate(.88)}
#hero .hero-content{position:absolute;inset:0;z-index:2;width:min(100% - 64px,1420px)!important;min-height:0!important;margin:auto;padding:clamp(22px,3.2vw,48px) 0!important;display:flex!important;flex-direction:column;justify-content:space-between;align-items:stretch;pointer-events:none}
#hero .hero-content a,#hero .hero-content .hero-stats{pointer-events:auto}
#hero .hero-meta{display:grid;grid-template-columns:.8fr 1.25fr .9fr;gap:clamp(18px,3vw,44px);align-items:center;margin:0;padding:clamp(16px,2vw,26px);background:rgba(248,250,248,.8);border:1px solid rgba(255,255,255,.58);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);box-shadow:0 12px 42px rgba(10,34,26,.12)}
#hero .hero-location{color:#52625a}
#hero .hero-location .hero-batch{margin-top:10px}
#hero .hero-meta .hero-sub{color:#31443a!important}
#hero .hero-stats>div{border-color:rgba(41,101,75,.28)}
#hero .hero-shell{max-width:1050px;margin:0 0 clamp(18px,3vw,42px);pointer-events:auto}
#hero .hero-eyebrow{color:#e0eee6!important;text-shadow:0 2px 12px #0006}
#hero .hero-title{color:#fff!important;text-shadow:0 3px 28px rgba(0,0,0,.25)}
#hero .hero-title em{color:#b8e2cb!important}
#hero .hero-actions a:nth-child(2){color:#fff!important;border-color:rgba(255,255,255,.75)!important;background:rgba(255,255,255,.12)!important;backdrop-filter:blur(8px)}
#hero .hero-actions a:nth-child(2):hover{background:rgba(255,255,255,.24)!important}
#hero .hero-media-caption{z-index:1;padding:18px clamp(22px,4vw,60px);background:linear-gradient(0deg,rgba(7,24,19,.62),transparent);pointer-events:none}

/* Programs become a scroll-driven stack, with each card taking the front in turn. */
#programs .prog-grid{display:block!important;margin-top:clamp(35px,5vw,68px)}
#programs .prog-card{position:sticky;top:104px;z-index:1;min-height:clamp(360px,42vw,500px);margin:0 0 clamp(100px,18vh,170px)!important;box-shadow:0 24px 55px rgba(19,56,43,.12)!important;transform-origin:center top}
#programs .prog-card:nth-child(1){z-index:1}
#programs .prog-card:nth-child(2){z-index:2}
#programs .prog-card:nth-child(3){z-index:3}
#programs .prog-card:last-child{margin-bottom:0!important}
#programs .prog-body{padding:clamp(24px,4vw,54px)!important}
#programs .prog-img img{min-height:100%;height:100%!important;object-fit:cover}

/* Reveal project tiles in sequence as the visitor scrolls down the gallery. */
#projects .proj-card.project-tile-reveal{opacity:0!important;transform:translateY(36px) scale(.985)!important;transition:opacity .62s ease var(--tile-delay,0ms),transform .62s cubic-bezier(.2,.75,.2,1) var(--tile-delay,0ms)!important}
#projects .proj-card.project-tile-reveal.project-tile-visible{opacity:1!important;transform:translateY(0) scale(1)!important}

/* Brand marks stay recognizable while sharing one consistent icon size. */
#socials .si{display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin:0 auto 12px;color:var(--accent)}
.social-icon{display:block;width:27px;height:27px;fill:currentColor}
.social-icon-instagram{fill:none;stroke:currentColor;stroke-width:1.8}
.social-icon-instagram .icon-fill{fill:currentColor;stroke:none}
.social-icon-whatsapp{fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.pi-brand{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:#0a66c2}
.pi-brand svg{width:16px;height:16px;fill:currentColor}
#about .feat-pills .pill .pi-brand{color:#0a66c2!important}

@media(max-width:760px){
  #hero{height:auto;min-height:720px;padding:0!important}
  #hero .hero-content{position:absolute;inset:0;width:calc(100% - 32px)!important;padding:18px 0!important}
  #hero .hero-meta{grid-template-columns:1fr 1fr;gap:14px;padding:14px;background:rgba(248,250,248,.84)}
  #hero .hero-meta .hero-sub{grid-column:1 / -1;grid-row:2;font-size:14px!important}
  #hero .hero-stats{grid-column:2;grid-row:1}
  #hero .hero-location .hero-batch{font-size:8px}
  #hero .hero-title{font-size:clamp(42px,12vw,76px)!important}
  #hero .hero-media-caption{font-size:7px;gap:10px}
  .isac-launch-inner{align-items:flex-start;flex-direction:column}
  #programs .prog-card{top:82px;grid-template-columns:1fr;grid-template-rows:190px auto;min-height:0;margin-bottom:16vh!important}
  #programs .prog-img{grid-column:1;grid-row:1}
  #programs .prog-img img{min-height:190px;height:190px!important}
  #programs .prog-body{grid-column:1;grid-row:2;padding:22px!important}
  #programs .prog-body .feature-list{display:grid;grid-template-columns:1fr 1fr;gap:4px 15px}
  #projects .proj-card.project-tile-reveal{transform:translateY(24px) scale(.99)!important}
}
@media(prefers-reduced-motion:reduce){#projects .proj-card.project-tile-reveal{opacity:1!important;transform:none!important;transition:none!important}}

/* Shared footer, brand mark and contact control. */
header .logo img, header .brand img{width:auto!important;height:48px!important;max-width:190px;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;object-fit:contain}
footer .footer-top{width:min(calc(100% - 64px),1440px)!important;max-width:1440px!important;margin:0 auto!important;padding:clamp(56px,7vw,96px) 0 clamp(42px,5vw,68px)!important;display:grid!important;grid-template-columns:minmax(230px,1.45fr) repeat(3,minmax(140px,1fr))!important;gap:clamp(24px,4.5vw,72px)!important}
footer .footer-brand .logo img{width:auto!important;height:42px!important;max-width:160px}
footer .footer-brand p{max-width:340px;color:#5d6c65!important;line-height:1.8}
footer .footer-col h4{margin:0 0 20px!important;padding:0!important;border:0!important;color:#183c32!important;font:500 10px/1.4 var(--M)!important;letter-spacing:.12em!important;text-transform:uppercase}
footer .footer-col li a,footer .footer-bottom,footer .footer-bottom p{color:#586a61!important}
footer .footer-col li a:hover,footer .footer-bottom a{color:#a84c21!important}
footer .footer-col li a::before{color:#c56838!important}
footer .footer-bottom{width:min(calc(100% - 64px),1440px)!important;max-width:1440px!important;margin:auto!important;padding:20px 0!important;border-top:1px solid #d7e1db!important}
.wa-float{display:grid!important;place-items:center;width:58px!important;height:58px!important;border-radius:50%!important;background:#20bd5a!important;color:#fff!important;box-shadow:0 10px 28px rgba(16,130,69,.3)!important;transition:transform .2s ease,box-shadow .2s ease!important}
.wa-float:hover{transform:translateY(-3px) scale(1.04)!important;box-shadow:0 14px 34px rgba(16,130,69,.36)!important}
.wa-float svg{width:31px;height:31px;fill:currentColor}

/* The home project gallery uses layered, scroll-sticky panels. */
#projects .proj-grid{display:block!important;margin-top:clamp(30px,5vw,64px)!important}
#projects .proj-card{position:sticky!important;top:104px;margin:0 0 clamp(110px,20vh,190px)!important;min-height:clamp(300px,35vw,500px);background:#fff!important;box-shadow:0 20px 54px rgba(19,56,43,.12)!important}
#projects .proj-card:nth-child(1){z-index:1}
#projects .proj-card:nth-child(2){z-index:2}
#projects .proj-card:nth-child(3){z-index:3}
#projects .proj-card:nth-child(4){z-index:4}
#projects .proj-card:nth-child(5){z-index:5}
#projects .proj-card:nth-child(6){z-index:6}
#projects .proj-card .proj-thumb{height:clamp(300px,35vw,500px)!important}
#projects .proj-card.big .proj-thumb{height:clamp(350px,46vw,570px)!important}
#projects .proj-card:last-child{margin-bottom:0!important}

/* High contrast copy on the Innovation Hub's dark project imagery. */
#proj-grid .proj-card h3,#proj-grid .proj-card .proj-title{color:#fff!important;text-shadow:0 1px 10px rgba(0,0,0,.28)}
#proj-grid .proj-card p{color:#edf3f0!important;text-shadow:0 1px 8px rgba(0,0,0,.3)}
#proj-grid .proj-card .pplay{color:#fff!important}
@media(max-width:760px){
  footer .footer-top{width:calc(100% - 36px)!important;grid-template-columns:1fr 1fr!important;gap:30px 22px!important;padding:48px 0 36px!important}
  footer .footer-brand{grid-column:1/-1}
  footer .footer-bottom{width:calc(100% - 36px)!important;padding:18px 0!important}
  #projects .proj-card{top:82px;margin-bottom:16vh!important;min-height:0}
  #projects .proj-card .proj-thumb,#projects .proj-card.big .proj-thumb{height:65vw!important;min-height:260px}
}

/* Keep the Industry-ready message and overlapping intro copy over the workshop footage. */
#hero{position:relative!important;height:clamp(500px,58vw,760px)!important;min-height:500px!important;padding:0!important;overflow:hidden!important;background:#112c24!important}
#hero:before{display:block!important;position:absolute;inset:0;z-index:1;content:"";background:linear-gradient(90deg,rgba(8,29,23,.58),rgba(8,29,23,.13) 80%),linear-gradient(0deg,rgba(8,29,23,.68),transparent 64%);pointer-events:none}
#hero .hero-media{position:absolute!important;inset:0!important;z-index:0!important;width:100%!important;height:100%!important;max-width:none!important;margin:0!important}
#hero .hero-media video{width:100%;height:100%!important;object-fit:cover;object-position:center 43%;opacity:.88;filter:saturate(.9)}
#hero .hero-content{position:absolute!important;inset:auto 0 0!important;z-index:2!important;width:min(calc(100% - 64px),1380px)!important;min-height:0!important;margin:0 auto!important;padding:0 0 clamp(35px,6vw,76px)!important;display:block!important;pointer-events:none!important}
#hero .hero-shell{max-width:1100px;margin:0!important;pointer-events:auto}
#hero .hero-eyebrow{color:#e0eee6!important;text-shadow:0 2px 12px #0006}
#hero .hero-title{color:#fff!important;text-shadow:0 3px 28px rgba(0,0,0,.25)}
#hero .hero-title em{color:#b8e2cb!important}
#hero .hero-content .hero-actions a{pointer-events:auto}
#hero+.hero-media-caption{position:relative!important;inset:auto!important;z-index:1;width:min(calc(100% - 64px),1380px)!important;margin:0 auto!important;padding:17px 0!important;background:transparent!important;color:#52645b!important;pointer-events:auto!important;font:500 9px var(--M)!important;letter-spacing:.08em;text-transform:uppercase}
#hero .hero-overlap-copy{position:relative;z-index:3;width:min(100%,680px);max-width:680px;margin:clamp(20px,3vw,34px) 0 0!important;padding:clamp(16px,2.4vw,24px)!important;background:rgba(244,248,245,.92);border:1px solid rgba(255,255,255,.78);box-shadow:0 18px 44px rgba(4,24,17,.2);backdrop-filter:blur(12px);color:#29463b!important;font-size:clamp(14px,1.3vw,17px)!important;line-height:1.65!important}
@media(max-width:700px){
  #hero{height:clamp(540px,125vw,690px)!important;min-height:540px!important}
  #hero .hero-content{width:calc(100% - 36px)!important;padding-bottom:34px!important}
  #hero .hero-title{font-size:clamp(44px,12vw,76px)!important}
  #hero+.hero-media-caption{width:calc(100% - 36px)!important}
  #hero .hero-overlap-copy{width:min(100%,620px);margin-top:18px!important;padding:14px 16px!important;font-size:13px!important;line-height:1.55!important}
}

/* Keep the complete navigation menu visible and scrollable on every viewport. */
header nav{position:fixed!important;inset:82px 0 0!important;width:100%!important;height:calc(100svh - 82px)!important;max-height:calc(100svh - 82px)!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;padding:clamp(20px,4vh,48px) max(24px,calc((100vw - 1120px)/2)) 40px!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;flex-direction:column!important;background:rgba(247,249,247,.99)!important;backdrop-filter:blur(18px)}
header nav.open{display:flex!important}
header nav .nav-item{flex:0 0 auto;width:100%!important;max-width:1120px;margin:0 auto;border-bottom:1px solid #d2dfd8;padding:5px 0!important}
header nav .nav-item>a{display:flex!important;align-items:center;justify-content:space-between;min-height:clamp(48px,6vh,70px)!important;padding:8px 4px!important;color:#17382f!important;font:600 clamp(19px,3.2vw,32px)/1.15 var(--H)!important;letter-spacing:-.045em!important;text-transform:none!important;white-space:normal}
header nav .nav-item>a:hover,header nav .nav-item>a:focus-visible{color:#008c70!important;background:transparent!important}
header nav .dropdown{display:flex!important;position:static!important;flex:0 0 auto;flex-wrap:wrap;align-items:center;gap:8px!important;width:100%;max-width:100%;padding:2px 0 14px 4px!important;border:0!important;background:transparent!important;box-shadow:none!important}
header nav .dropdown a{display:inline-flex!important;align-items:center;justify-content:center;min-height:38px!important;max-width:100%;padding:9px 13px!important;border:1px solid #c7d8cf!important;border-radius:3px!important;background:#fff!important;color:#40594e!important;font:500 10px/1.35 var(--M)!important;letter-spacing:.025em;text-transform:uppercase;white-space:normal}
header nav .dropdown a:hover,header nav .dropdown a:focus-visible{background:#e8f2ed!important;border-color:#89aa99!important;color:#17382f!important}
header nav>.nav-cta{flex:0 0 auto;margin:22px auto 0 0!important}
header .hamburger{z-index:100!important}
@media(max-width:700px){header nav{inset:70px 0 0!important;height:calc(100svh - 70px)!important;max-height:calc(100svh - 70px)!important;padding:16px 18px 28px!important}header nav .nav-item>a{min-height:46px!important;font-size:20px!important}header nav .dropdown{gap:7px!important;padding-bottom:12px!important}header nav .dropdown a{font-size:9px!important;min-height:36px!important;padding:8px 10px!important}}

/* Fluid layouts for wide monitors, tablets, compact phones, and narrow screens. */
html,body{width:100%;max-width:100%;min-width:320px;overflow-x:clip}
img,video,iframe,svg{max-width:100%}
img,video{object-fit:cover}
main,.wrap,.page-hero-inner{min-width:0}
section,.page-hero,footer{max-width:100%;min-width:0}
.wrap,.page-hero-inner{width:min(calc(100% - 64px),1380px)!important}
.section-pad{padding-block:clamp(56px,8vw,132px)!important}
.page-title{font-size:clamp(42px,8.7vw,132px)!important;overflow-wrap:anywhere}
.sec-title{font-size:clamp(34px,5.7vw,76px)!important;overflow-wrap:anywhere}
.about-grid,.split-grid,.contact-showcase-grid,.faq-showcase-grid,#podcast .podcast-home-grid{min-width:0}
.prog-grid,.proj-grid,.success-grid,.snippet-grid,.blog-grid,.cards-grid,.social-row,.client-logos{min-width:0}
.prog-card,.proj-card,.story-card,.video-card,.blog-card,.success-card,.social-card,.snippet-card,.contact-showcase-form,.contact-showcase-copy{min-width:0;max-width:100%}
.prog-card img,.proj-card img,.story-card img,.video-card img,.blog-card img,.success-card img,.snippet-card video{max-width:100%}
.footer-top,.footer-bottom{min-width:0}
footer .footer-col li a{overflow-wrap:anywhere}
table{width:100%;max-width:100%;display:block;overflow-x:auto;overscroll-behavior-x:contain}
pre,code{max-width:100%;overflow-x:auto}
input,select,textarea,button{max-width:100%}
.hero-actions,.podcast-home-actions,.cta-actions{flex-wrap:wrap}

@media(min-width:1600px){
  body{font-size:16px}
  .wrap,.page-hero-inner{width:min(calc(100% - 112px),1540px)!important}
}
@media(max-width:1100px){
  .wrap,.page-hero-inner{width:calc(100% - 48px)!important}
  .about-grid,.split-grid,.contact-showcase-grid,.faq-showcase-grid,#podcast .podcast-home-grid{gap:clamp(24px,4vw,48px)!important}
  #socials .social-row{grid-template-columns:repeat(3,minmax(0,1fr))}
  #socials .social-card:last-child{grid-column:auto}
  #proj-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  footer .footer-top{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  footer .footer-brand{grid-column:1/-1}
}
@media(max-width:760px){
  .wrap,.page-hero-inner{width:calc(100% - 36px)!important}
  .page-hero{padding:56px 0 28px!important}
  .page-title{font-size:clamp(42px,13vw,78px)!important;line-height:.96!important}
  .sec-title{font-size:clamp(34px,10vw,58px)!important;line-height:1!important}
  .page-hero p,.sec-desc{font-size:15px!important}
  .section-pad{padding-block:58px!important}
  .about-grid,.split-grid,.contact-showcase-grid,.faq-showcase-grid,#podcast .podcast-home-grid{grid-template-columns:minmax(0,1fr)!important}
  .about-grid img,.about-img-wrap img{height:auto!important;min-height:0!important;max-height:72svh;aspect-ratio:4/3;object-fit:cover}
  .prog-grid,.proj-grid,.success-grid,.snippet-grid,.blog-grid,.cards-grid{grid-template-columns:minmax(0,1fr)!important}
  #proj-grid{grid-template-columns:minmax(0,1fr)!important}
  .client-logos{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #projects .proj-card{margin-bottom:13vh!important}
  #projects .proj-card .proj-thumb,#projects .proj-card.big .proj-thumb{height:clamp(250px,72vw,440px)!important;min-height:0!important}
  #projects .proj-info{left:20px!important;right:20px!important;bottom:20px!important}
  #projects .proj-title{font-size:clamp(22px,7vw,36px)!important}
  #programs .prog-card{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:clamp(170px,48vw,260px) auto!important;min-height:0!important}
  #programs .prog-img{grid-column:1!important;grid-row:1!important;min-height:0!important}
  #programs .prog-img img{height:100%!important;min-height:0!important}
  #programs .prog-body{grid-column:1!important;grid-row:2!important;padding:clamp(20px,5vw,30px)!important}
  #programs .prog-body .feature-list{grid-template-columns:1fr!important}
  #programs .podcast-panel{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important}
  #programs .podcast-panel video{grid-row:1!important;height:clamp(200px,58vw,340px)!important;min-height:0!important}
  #programs .podcast-panel .podcast-home-copy{grid-row:2!important;padding:24px!important}
  #socials .social-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  #socials .social-card{min-height:170px!important;padding:22px 12px!important}
  #socials .social-card:last-child{grid-column:1/-1!important}
  #hero .hero-overlap-copy{font-size:14px!important}
  #hero .hero-title{font-size:clamp(42px,12.5vw,78px)!important;overflow-wrap:normal}
  .blog-feature-card{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;gap:14px!important}
  .blog-feature-card img,.blog-feature-card h3,.blog-feature-meta,.blog-feature-card .text-link{grid-column:1!important;grid-row:auto!important}
  .blog-feature-card img{aspect-ratio:1.35;height:auto!important}
  .isac-launch-inner{gap:16px;flex-wrap:wrap}
  #cta{width:calc(100% - 24px)!important;padding:clamp(28px,8vw,52px) 20px!important}
  #cta h2{font-size:clamp(34px,10vw,58px)!important}
  #cta .subscribe-row{flex-direction:column}
  #cta .subscribe-row input,#cta .subscribe-row button{width:100%!important}
  .form-row,.form-2col,.form-3col{grid-template-columns:minmax(0,1fr)!important}
  footer .footer-top{width:calc(100% - 36px)!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 18px!important}
  footer .footer-brand{grid-column:1/-1}
  footer .footer-bottom{width:calc(100% - 36px)!important;display:flex;flex-direction:column;gap:8px}
  .tile-action{width:48px;height:48px}
}
@media(max-width:420px){
  .wrap,.page-hero-inner{width:calc(100% - 28px)!important}
  header .header-inner{width:calc(100% - 28px)!important}
  header .logo img,header .brand img{max-width:150px;height:42px!important}
  .hero-actions a,.podcast-home-actions a{width:100%;min-width:0!important}
  #socials .social-row{grid-template-columns:minmax(0,1fr)!important}
  #socials .social-card:last-child{grid-column:auto!important}
  footer .footer-top{grid-template-columns:minmax(0,1fr)!important}
  footer .footer-brand{grid-column:auto}
  #hero{height:clamp(500px,150vw,660px)!important;min-height:500px!important}
  #hero .hero-title{font-size:clamp(40px,12vw,52px)!important}
  .hero-media-caption{font-size:8px!important;letter-spacing:.04em!important}
  #projects .proj-card .proj-thumb,#projects .proj-card.big .proj-thumb{height:270px!important}
}

/* Contact and social icon improvements. */
.founder-note{padding-top:clamp(32px,5vw,72px)!important;padding-bottom:clamp(24px,4vw,54px)!important;background:#f3f6f3!important}
.founder-note-inner{max-width:960px!important;padding:clamp(24px,5vw,54px);border:1px solid #d7e2db;background:#fff}
.founder-note-inner .sec-title{margin:12px 0 18px;font-size:clamp(34px,5vw,62px)!important}
.founder-note-inner>p:not(.sec-label){max-width:760px;color:#53645b;font-size:clamp(15px,1.4vw,18px);line-height:1.8}
.contact-info-card .ci-icon svg{display:block;width:30px;height:30px;fill:currentColor}
.contact-info-card .ci-whatsapp-icon{color:#18a95b}
.follow-socials{display:flex;flex-wrap:wrap;gap:10px}
.follow-socials a{display:inline-flex;align-items:center;justify-content:flex-start;gap:9px;min-width:145px;min-height:48px;padding:10px 13px;background:#f4f6f4;border:1px solid #d4dfd8;color:#344d42!important;text-decoration:none;font:500 11px var(--M);transition:background .2s,border-color .2s,color .2s}
.follow-socials a:hover{background:#e7f1ec;border-color:#8eae9d;color:#17382f!important}
.follow-socials svg{width:19px;height:19px;flex:0 0 19px;fill:currentColor}
.follow-socials .social-icon-instagram{fill:none;stroke:currentColor;stroke-width:1.8}
.follow-socials .social-icon-instagram .icon-fill{fill:currentColor;stroke:none}
.blog-layout aside .sidebar-widget>.btn-orange{display:flex!important;align-items:center;justify-content:center;text-align:center;min-height:48px;padding:12px 16px!important;line-height:1.3}
.blog-social-link{display:flex!important;align-items:center;gap:13px;min-height:56px;padding:12px 0!important}
.blog-social-link>svg{width:22px;height:22px;flex:0 0 22px;fill:currentColor}
.blog-social-link>.social-icon-instagram{fill:none;stroke:currentColor;stroke-width:1.8}
.blog-social-link>.social-icon-instagram .icon-fill{fill:currentColor;stroke:none}
.blog-social-link span{display:flex;flex-direction:column;gap:2px}
.blog-social-link small{font-size:10px;color:var(--muted)}

/* Highlight the ISAC callout as a concise platform introduction. */
.isac-launch{padding:clamp(26px,4vw,52px) 0!important;background:#e9f2ed!important;border-block:1px solid #d0e0d7!important}
.isac-launch-inner{align-items:center!important;gap:28px!important}
.isac-launch-mark{display:grid;place-items:center;flex:0 0 76px;width:76px;height:76px;padding:8px;border:1px solid #d0e0d7;background:#fff}
.isac-launch-mark img{display:block;width:100%;height:100%;object-fit:contain}
.isac-launch-copy{flex:1 1 440px;max-width:780px}
.isac-launch-copy>span{display:block;margin-bottom:8px;color:#17382f!important;font:500 10px var(--M)!important;letter-spacing:.1em;text-transform:uppercase}
.isac-launch-copy>span:before{content:"/ ";color:#008c70}
.isac-launch-copy>h2{margin:0 0 9px;color:#17382f;font-size:clamp(22px,3vw,34px);line-height:1.15;letter-spacing:-.035em}
.isac-launch-copy>p{margin:0;color:#4e6258!important;font-size:clamp(15px,1.45vw,18px);line-height:1.7}
.isac-launch-inner>a{flex:0 0 auto;border:1px solid #17382f;transition:background .2s,transform .2s}
.isac-launch-inner>a:hover{background:#245647;transform:translateY(-2px)}

/* Google reviews before the FAQ. */
.reviews-section{background:#f3f6f3!important}
.reviews-grid{display:grid;grid-template-columns:1fr;gap:clamp(28px,6vw,84px);align-items:start}
.reviews-intro{position:static}
.reviews-intro h2{margin:18px 0;font-size:clamp(38px,5.3vw,68px)!important;line-height:1!important}
.reviews-intro>p:last-child{max-width:420px;color:#57675f}
.reviews-carousel{margin-top:22px;min-width:0}
.review-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;color:#53645b;font:500 9px var(--M);letter-spacing:.07em;text-transform:uppercase}
.review-controls>div{display:flex;gap:7px}
.review-controls button{display:grid;place-items:center;width:40px;height:40px;border:1px solid #c8d7ce;background:#fff;color:#17382f;font-size:20px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.review-controls button:hover,.review-controls button:focus-visible{background:#17382f;color:#fff;border-color:#17382f}
.review-controls button:disabled{opacity:.38;cursor:default}
.review-viewport{width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9caf9f #edf2ee}
.review-list{display:flex;flex-wrap:nowrap;gap:14px;width:100%;min-width:0;margin:0;padding:0 0 10px}
.review-entry{flex:0 0 calc(50% - 7px);min-width:0;min-height:210px;padding:20px 22px;border:1px solid #d7e2db;background:#f8faf8;scroll-snap-align:start;display:flex;flex-direction:column;align-items:flex-start}
.review-entry h4{margin:0 0 4px;color:#17382f;font-size:14px}
.review-entry .review-stars{color:#b65e35;letter-spacing:.12em}
.review-entry p{margin:8px 0 0;color:#4f6057;white-space:pre-wrap;overflow-wrap:anywhere}
.rating-only-note{font-size:13px;line-height:1.6}
.google-review-entry>a{margin-top:auto;padding-top:14px}
.google-rating{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 12px;width:max-content;max-width:100%;margin-top:26px;padding:15px 18px;border:1px solid #d7e2db;background:#fff;color:#17382f;text-decoration:none}
.google-rating-score{grid-row:span 2;font-size:30px;font-weight:600;line-height:1}
.google-rating-stars{color:#b65e35;letter-spacing:.1em}
.google-rating-count{font:500 9px var(--M);letter-spacing:.04em;color:#53645b}
.google-review-cta{display:inline-flex;align-items:center;gap:10px;margin-top:14px;text-decoration:none}
.google-review-meta{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px}
.google-review-meta h4{margin:0}
.review-source{font:500 9px var(--M);letter-spacing:.04em;color:#64766d}
.google-review-entry .rating-only-note{margin:9px 0 12px;color:#4f6057;font-size:13px;line-height:1.55}
.google-review-entry>a{font:500 9px var(--M);letter-spacing:.06em;text-transform:uppercase;color:#17382f;text-decoration:none;border-bottom:1px solid #afc3b8;padding-bottom:3px}
.google-review-entry>a:hover{color:#008c70}
@media(max-width:760px){
  .founder-note-inner{padding:24px 20px}
  .reviews-grid{grid-template-columns:minmax(0,1fr)}
  .review-entry{flex-basis:min(82vw,390px);min-height:190px}
  .reviews-intro{position:static}
  .isac-launch-inner{align-items:flex-start!important}
  .isac-launch-mark{flex-basis:60px;width:60px;height:60px}
  .isac-launch-copy{flex-basis:calc(100% - 80px)}
  .isac-launch-inner>a{width:100%;justify-content:center}
}

/* Give text across every page a consistent, readable space between words. */
body{word-spacing:.09em}
#hero+.hero-media-caption{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}

/* Keep the complete hero message inside the video frame at every viewport size. */
#hero .hero-content{width:min(calc(100% - 64px),1420px)!important;padding-bottom:clamp(24px,4vw,52px)!important}
#hero .hero-shell{max-width:1380px!important}
#hero .hero-title{max-width:1380px!important;font-size:clamp(48px,7.2vw,112px)!important;line-height:.94!important;letter-spacing:-.075em!important;text-wrap:balance}
#hero .hero-overlap-copy{margin-top:clamp(16px,2vw,26px)!important}
@media(max-width:760px){
  #hero{height:clamp(610px,150vw,760px)!important;min-height:610px!important}
  #hero .hero-content{width:calc(100% - 36px)!important;padding-bottom:26px!important}
  #hero .hero-title{font-size:clamp(38px,9vw,65px)!important;line-height:.96!important;letter-spacing:-.07em!important}
  #hero .hero-overlap-copy{margin-top:16px!important;padding:14px 16px!important;font-size:14px!important}
}
@media(max-width:420px){
  #hero{height:clamp(610px,170vw,760px)!important;min-height:610px!important}
  #hero .hero-title{font-size:clamp(36px,10vw,44px)!important}
}

/* Starfield Motion canvas fills the page behind the site surfaces and content tiles. */
html{background:#f5f7f5!important}
body{position:relative;isolation:isolate;background:transparent!important}
#starfield-motion-background{position:fixed;inset:0;z-index:-1;display:block;pointer-events:none;contain:strict}
body>section:not(#hero),main>section:not(#hero),.page-hero,.section-pad,#about,#programs,#projects,#success,#socials,#articles,#podcast,#faq,#reviews,.reviews-section,#contact-showcase,#cta,.blog-showcase,.founder-note,.isac-launch{background:rgba(245,247,245,.72)!important}
header .header-inner,.wrap,.page-hero-inner,.footer-top,.footer-bottom,#hero,.topbar{position:relative;z-index:2}
