/* KERNEL — Android app studio, engineered from the core
   Editorial gradient: emerald + coral + lilac + cream */

:root{
  --bg: #fefcf7;
  --paper: #ffffff;
  --card: #fbf6ee;
  --ink: #1f1e2c;
  --emerald: #12a870;
  --emerald-dp: #067c50;
  --coral: #ff6a5b;
  --coral-dp: #e5482d;
  --lilac: #a273f2;
  --lilac-dp: #7c48db;
  --sun: #ffce3b;
  --muted: #6a6685;
  --line: #ece3d0;
}

*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--ink);font-family:'Public Sans',sans-serif;-webkit-font-smoothing:antialiased;line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{max-width:1240px;margin:0 auto;padding:0 32px}

/* Nav */
.nav{background:rgba(254,252,247,.88);backdrop-filter:blur(12px);padding:20px 0;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.nav-inner{max-width:1240px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.logo img{height:38px;width:auto}
.nav-links{display:flex;gap:32px;align-items:center}
.nav-links a{font-family:'Public Sans',sans-serif;font-size:15px;font-weight:500;color:var(--ink);padding:6px 0;position:relative}
.nav-links a.active,.nav-links a:hover{color:var(--emerald-dp)}
.nav-cta{display:flex;gap:12px}
.btn-line{color:var(--ink);padding:11px 20px;font-family:'Public Sans',sans-serif;font-size:14px;font-weight:600;background:transparent;border:1.5px solid var(--ink);cursor:pointer;letter-spacing:.2px;border-radius:100px}
.btn-line:hover{background:var(--ink);color:var(--bg)}
.btn-primary{background:linear-gradient(135deg,var(--emerald),var(--lilac));color:var(--paper);padding:12px 24px;font-family:'Public Sans',sans-serif;font-size:14px;font-weight:700;border:0;cursor:pointer;letter-spacing:.2px;border-radius:100px;box-shadow:0 4px 20px rgba(162,115,242,.35);transition:transform .15s,box-shadow .15s}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 24px rgba(162,115,242,.45)}

/* Hero */
.hero{padding:80px 0 110px;position:relative;overflow:hidden;background:linear-gradient(135deg,#fefcf7 0%,#fefcf7 40%,#f8ede8 70%,#f0e6f5 100%)}
.hero::before{content:"";position:absolute;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(162,115,242,.25),transparent 60%);filter:blur(60px)}
.hero::after{content:"";position:absolute;bottom:-200px;left:-100px;width:500px;height:500px;background:radial-gradient(circle,rgba(18,168,112,.18),transparent 60%);filter:blur(50px)}
.hero-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;position:relative;z-index:2}
.hero-badge{display:inline-flex;align-items:center;gap:10px;font-family:'Public Sans',sans-serif;font-size:12px;color:var(--lilac-dp);border:1.5px solid var(--lilac);padding:6px 14px;letter-spacing:.5px;font-weight:700;margin-bottom:32px;background:rgba(162,115,242,.06);border-radius:100px}
.hero-badge::before{content:"◆";color:var(--lilac)}
.hero-h{font-family:'Fraunces',serif;font-size:100px;line-height:.96;font-weight:400;letter-spacing:-3px;margin-bottom:32px}
.hero-h em{font-style:italic;color:var(--emerald)}
.hero-h .grad{background:linear-gradient(135deg,var(--coral),var(--lilac));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-style:italic;font-weight:500}
.hero-lede{font-family:'Fraunces',serif;font-size:21px;line-height:1.55;color:var(--ink);font-style:italic;max-width:540px;margin-bottom:36px}
.hero-cta{display:flex;gap:14px;align-items:center;margin-bottom:32px}
.hero-social{display:flex;gap:24px;align-items:center;font-family:'Public Sans',sans-serif;font-size:13px;color:var(--muted);font-weight:600}
.hero-social span::before{content:"◆ ";color:var(--coral)}

/* Fig. panel (mimic client example) */
.fig{background:var(--paper);border-radius:20px;overflow:hidden;box-shadow:0 30px 80px rgba(31,30,44,.15),0 0 0 1px rgba(31,30,44,.05);position:relative}
.fig::before{content:"";position:absolute;inset:-2px;background:linear-gradient(135deg,var(--emerald),var(--lilac),var(--coral));border-radius:22px;z-index:-1;opacity:.4}
.fig-bar{background:var(--card);padding:14px 22px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}
.fig-bar .l{font-family:'Public Sans',sans-serif;font-size:12px;font-weight:600;letter-spacing:.5px;color:var(--muted)}
.fig-bar .l em{color:var(--emerald-dp);font-style:normal;font-weight:700}
.fig-bar .rev{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);letter-spacing:.5px;font-weight:700}
.fig-body{padding:36px 32px;background:var(--paper)}
.fig-title{font-family:'Public Sans',sans-serif;font-size:11px;font-weight:700;text-align:center;color:var(--muted);letter-spacing:2px;text-transform:uppercase;margin-bottom:24px}
.fig-diagram{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:20px 0 30px}
.fig-plate{background:var(--emerald);color:var(--paper);border:2px solid var(--ink);padding:20px 14px;border-radius:8px;font-family:'Public Sans',sans-serif;font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);text-align:center}
.fig-plate.p1{background:var(--emerald)}
.fig-plate.p2{background:var(--lilac)}
.fig-plate.p3{background:var(--coral)}
.fig-plate.p4{background:var(--sun);color:var(--ink)}
.fig-plates-l,.fig-plates-r{display:flex;gap:6px}
.fig-bar-line{height:6px;background:linear-gradient(90deg,var(--emerald),var(--lilac),var(--coral));border-radius:3px;position:relative}
.fig-caption{font-family:'Fraunces',serif;font-style:italic;font-size:13px;text-align:center;color:var(--muted);padding-top:20px;border-top:1px dashed var(--line)}
.fig-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.fig-stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 14px;text-align:center}
.fig-stat .l{font-family:'Public Sans',sans-serif;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.fig-stat .v{font-family:'Fraunces',serif;font-size:28px;font-weight:400;color:var(--ink);line-height:1}
.fig-stat .v em{font-style:italic;color:var(--lilac)}

/* Section */
.section{padding:110px 0;position:relative;overflow:hidden}
.section-alt{background:linear-gradient(180deg,var(--bg) 0%,#fbf6ee 100%)}
.section-head{max-width:920px;margin:0 auto 72px;text-align:center;position:relative;z-index:2}
.eyebrow{display:inline-block;background:linear-gradient(135deg,var(--emerald),var(--lilac));color:var(--paper);padding:6px 16px;font-family:'Public Sans',sans-serif;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:24px;border-radius:100px}
.section-h{font-family:'Fraunces',serif;font-size:64px;line-height:1;font-weight:400;letter-spacing:-2px;margin-bottom:22px}
.section-h em{font-style:italic;color:var(--emerald)}
.section-h .grad{background:linear-gradient(135deg,var(--coral),var(--lilac));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-style:italic}
.section-lede{font-family:'Fraunces',serif;font-size:22px;line-height:1.55;color:var(--ink);max-width:720px;margin:0 auto;font-style:italic}

/* Service grid */
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative;z-index:2}
.service{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:36px 32px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.service::before{content:"";position:absolute;top:-40px;right:-40px;width:120px;height:120px;background:radial-gradient(circle,rgba(18,168,112,.12),transparent 60%);opacity:0;transition:opacity .3s}
.service:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(31,30,44,.1)}
.service:hover::before{opacity:1}
.service:nth-child(3n+2)::before{background:radial-gradient(circle,rgba(255,106,91,.12),transparent 60%)}
.service:nth-child(3n+3)::before{background:radial-gradient(circle,rgba(162,115,242,.12),transparent 60%)}
.service-num{font-family:'Public Sans',sans-serif;font-size:11px;font-weight:700;color:var(--emerald-dp);letter-spacing:2px;text-transform:uppercase;margin-bottom:14px;position:relative}
.service:nth-child(3n+2) .service-num{color:var(--coral-dp)}
.service:nth-child(3n+3) .service-num{color:var(--lilac-dp)}
.service h3{font-family:'Fraunces',serif;font-size:28px;font-weight:500;letter-spacing:-.6px;margin-bottom:14px;position:relative;line-height:1.15}
.service h3 em{font-style:italic;color:var(--emerald)}
.service p{font-family:'Public Sans',sans-serif;font-size:15px;line-height:1.65;color:var(--muted);position:relative;margin-bottom:18px}
.service .meta{font-family:'Public Sans',sans-serif;font-size:12px;font-weight:700;color:var(--ink);padding-top:14px;border-top:1px solid var(--line);position:relative}

/* Programme */
.programme-list{display:flex;flex-direction:column;gap:24px;max-width:900px;margin:0 auto;position:relative;z-index:2}
.p-step{display:grid;grid-template-columns:120px 1fr;gap:32px;padding:36px;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 12px 28px rgba(31,30,44,.06);align-items:center;position:relative;overflow:hidden}
.p-step::before{content:"";position:absolute;top:0;left:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--emerald),var(--lilac))}
.p-step:nth-child(2)::before{background:linear-gradient(180deg,var(--coral),var(--sun))}
.p-step:nth-child(3)::before{background:linear-gradient(180deg,var(--lilac),var(--emerald))}
.p-step:nth-child(4)::before{background:linear-gradient(180deg,var(--sun),var(--coral))}
.p-step-num{font-family:'Fraunces',serif;font-size:80px;font-weight:400;letter-spacing:-3px;line-height:.9;font-style:italic;background:linear-gradient(135deg,var(--emerald),var(--lilac));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-align:center}
.p-step:nth-child(2) .p-step-num{background:linear-gradient(135deg,var(--coral),var(--sun));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.p-step:nth-child(3) .p-step-num{background:linear-gradient(135deg,var(--lilac),var(--emerald));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.p-step:nth-child(4) .p-step-num{background:linear-gradient(135deg,var(--sun),var(--coral));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.p-step-body h4{font-family:'Fraunces',serif;font-size:28px;font-weight:500;letter-spacing:-.5px;margin-bottom:10px}
.p-step-body h4 em{font-style:italic;color:var(--emerald)}
.p-step-body p{font-family:'Public Sans',sans-serif;font-size:16px;line-height:1.6;color:var(--muted);font-weight:500;margin-bottom:12px}
.p-step-body .dur{font-family:'Public Sans',sans-serif;font-size:12px;color:var(--ink);letter-spacing:.5px;font-weight:700;padding-top:10px;border-top:1px dashed var(--line)}

/* Work grid */
.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;position:relative;z-index:2}
.work-item{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:40px 36px;box-shadow:0 16px 32px rgba(31,30,44,.08);position:relative;overflow:hidden}
.work-item::before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--emerald),var(--lilac))}
.work-item:nth-child(2)::before{background:linear-gradient(90deg,var(--coral),var(--sun))}
.work-item:nth-child(3)::before{background:linear-gradient(90deg,var(--lilac),var(--emerald))}
.work-item:nth-child(4)::before{background:linear-gradient(90deg,var(--sun),var(--coral))}
.work-tag{display:inline-block;font-family:'Public Sans',sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:5px 12px;background:linear-gradient(135deg,var(--emerald),var(--lilac));color:var(--paper);margin-bottom:20px;font-weight:700;border-radius:100px}
.work-item:nth-child(2n) .work-tag{background:linear-gradient(135deg,var(--coral),var(--sun))}
.work-item h3{font-family:'Fraunces',serif;font-size:30px;line-height:1.15;font-weight:500;letter-spacing:-.7px;margin-bottom:18px}
.work-item h3 em{font-style:italic;color:var(--emerald)}
.work-item p{font-family:'Fraunces',serif;font-size:17px;line-height:1.6;color:var(--ink);margin-bottom:26px;font-style:italic}
.work-stats{display:flex;gap:36px;padding-top:20px;border-top:1px dashed var(--line)}
.work-stat .n{font-family:'Fraunces',serif;font-size:36px;font-weight:400;font-style:italic;line-height:1;letter-spacing:-1px;background:linear-gradient(135deg,var(--emerald),var(--lilac));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.work-item:nth-child(2n) .work-stat .n{background:linear-gradient(135deg,var(--coral),var(--sun));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.work-stat .l{font-family:'Public Sans',sans-serif;font-size:10px;color:var(--muted);letter-spacing:1.5px;text-transform:uppercase;margin-top:6px;font-weight:700}

/* Stats */
.stats{background:linear-gradient(135deg,var(--emerald),var(--lilac));color:var(--paper);padding:96px 0;position:relative;overflow:hidden}
.stats::before{content:"";position:absolute;top:-100px;right:-100px;width:300px;height:300px;background:radial-gradient(circle,rgba(255,206,59,.3),transparent 60%);filter:blur(40px)}
.stats::after{content:"";position:absolute;bottom:-100px;left:-100px;width:300px;height:300px;background:radial-gradient(circle,rgba(255,106,91,.4),transparent 60%);filter:blur(40px)}
.stats-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center;position:relative}
.stat .num{font-family:'Fraunces',serif;font-size:80px;font-weight:400;letter-spacing:-2px;line-height:1;margin-bottom:14px;font-style:italic;color:var(--sun)}
.stat:nth-child(2) .num{color:var(--paper)}
.stat:nth-child(3) .num{color:var(--coral)}
.stat:nth-child(4) .num{color:var(--sun)}
.stat .num .u{font-size:.5em;opacity:.75;font-style:normal}
.stat .lbl{font-family:'Public Sans',sans-serif;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:rgba(255,255,255,.85)}

/* Testis */
.testis{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative;z-index:2}
.testi{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:36px 32px;box-shadow:0 12px 28px rgba(31,30,44,.06);position:relative;overflow:hidden}
.testi::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--emerald),var(--lilac),var(--coral))}
.testi:nth-child(2)::before{background:linear-gradient(90deg,var(--coral),var(--sun))}
.testi:nth-child(3)::before{background:linear-gradient(90deg,var(--lilac),var(--emerald))}
.testi .quote{font-family:'Fraunces',serif;font-size:19px;line-height:1.55;color:var(--ink);margin-bottom:26px;font-style:italic}
.testi .who{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid var(--line)}
.testi .avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--emerald),var(--lilac));display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:500;font-style:italic;color:var(--paper);font-size:18px}
.testi:nth-child(2) .avatar{background:linear-gradient(135deg,var(--coral),var(--sun));color:var(--paper)}
.testi:nth-child(3) .avatar{background:linear-gradient(135deg,var(--lilac),var(--coral))}
.testi .who-info .name{font-family:'Public Sans',sans-serif;font-size:14px;font-weight:700}
.testi .who-info .role{font-family:'Public Sans',sans-serif;font-size:12px;color:var(--muted);margin-top:2px;font-weight:500}

/* Tiers */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1140px;margin:0 auto;position:relative;z-index:2}
.tier{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:40px 32px;position:relative;box-shadow:0 12px 28px rgba(31,30,44,.06)}
.tier.pop{background:linear-gradient(135deg,var(--emerald),var(--lilac));color:var(--paper);box-shadow:0 24px 48px rgba(162,115,242,.35)}
.tier.pop::before{content:"MOST BOOKED";position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--sun);color:var(--ink);font-family:'Public Sans',sans-serif;font-size:11px;letter-spacing:2px;padding:6px 14px;border-radius:100px;font-weight:700}
.tier-name{font-family:'Public Sans',sans-serif;font-size:12px;color:var(--emerald-dp);letter-spacing:2px;text-transform:uppercase;font-weight:700;margin-bottom:14px}
.tier.pop .tier-name{color:var(--sun)}
.tier-price{display:flex;align-items:baseline;gap:6px;margin-bottom:10px}
.tier-price .amt{font-family:'Fraunces',serif;font-size:60px;font-weight:400;letter-spacing:-2px;line-height:1}
.tier-price .per{font-family:'Public Sans',sans-serif;font-size:13px;color:var(--muted);font-weight:600}
.tier.pop .tier-price .per{color:rgba(255,255,255,.85)}
.tier-tag{font-family:'Fraunces',serif;font-size:16px;color:var(--muted);margin-bottom:28px;font-style:italic}
.tier.pop .tier-tag{color:rgba(255,255,255,.85)}
.tier-cta{display:block;width:100%;text-align:center;background:transparent;color:var(--ink);border:1.5px solid var(--ink);padding:14px;font-family:'Public Sans',sans-serif;font-size:14px;font-weight:700;cursor:pointer;letter-spacing:.3px;border-radius:100px}
.tier-cta:hover{background:var(--ink);color:var(--paper)}
.tier.pop .tier-cta{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.tier.pop .tier-cta:hover{background:var(--sun);color:var(--ink);border-color:var(--sun)}
.tier-features{margin-top:28px;padding-top:24px;border-top:1px dashed var(--line);list-style:none}
.tier.pop .tier-features{border-color:rgba(255,255,255,.3)}
.tier-features li{display:flex;align-items:flex-start;gap:12px;padding:7px 0;font-family:'Public Sans',sans-serif;font-size:14px;color:var(--ink);font-weight:500}
.tier.pop .tier-features li{color:var(--paper)}
.tier-features li::before{content:"◆";color:var(--emerald);padding-top:4px;font-size:10px}
.tier.pop .tier-features li::before{color:var(--sun)}

/* CTA */
.cta-band{padding:120px 0;background:linear-gradient(135deg,var(--emerald) 0%,var(--lilac) 60%,var(--coral) 100%);text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;top:-100px;left:8%;width:300px;height:300px;background:radial-gradient(circle,rgba(255,206,59,.4),transparent 60%);filter:blur(40px)}
.cta-band h2{font-family:'Fraunces',serif;font-size:72px;line-height:1;font-weight:400;letter-spacing:-2px;margin-bottom:22px;color:var(--paper);position:relative}
.cta-band h2 em{font-style:italic;color:var(--sun)}
.cta-band p{font-family:'Fraunces',serif;font-size:22px;color:rgba(255,255,255,.9);max-width:560px;margin:0 auto 36px;font-style:italic;position:relative}
.cta-band .btn-primary{background:var(--paper);color:var(--ink);position:relative;box-shadow:0 6px 20px rgba(0,0,0,.15);padding:14px 32px;font-size:15px}
.cta-band .btn-primary:hover{background:var(--ink);color:var(--paper)}

/* Footer */
footer{background:var(--ink);color:var(--paper);padding:80px 0 32px;position:relative;overflow:hidden}
footer::before{content:"";position:absolute;top:-60px;right:-60px;width:240px;height:240px;background:radial-gradient(circle,rgba(162,115,242,.24),transparent 60%);filter:blur(40px)}
.foot-grid{max-width:1240px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:56px;position:relative}
.foot-brand h4{font-family:'Fraunces',serif;font-size:32px;font-weight:400;font-style:italic;margin-bottom:14px;background:linear-gradient(135deg,var(--emerald),var(--lilac),var(--coral));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.foot-brand p{font-family:'Public Sans',sans-serif;font-size:14px;line-height:1.65;color:#c8c4d8;max-width:340px;font-weight:500}
.foot-col h5{font-family:'Public Sans',sans-serif;font-size:11px;color:var(--sun);letter-spacing:2px;text-transform:uppercase;margin-bottom:18px;font-weight:700}
.foot-col p,.foot-col a{font-family:'Public Sans',sans-serif;font-size:14px;line-height:1.8;color:#c8c4d8;display:block;font-weight:500}
.foot-col a:hover{color:var(--sun)}
.foot-bottom{max-width:1240px;margin:0 auto;padding:24px 32px 0;border-top:1px solid #383650;display:flex;justify-content:space-between;font-family:'Public Sans',sans-serif;font-size:12px;color:#7a7595;letter-spacing:.5px;font-weight:600;position:relative}

/* Sub-hero */
.sub-hero{padding:90px 0 70px;text-align:center;position:relative;overflow:hidden;background:linear-gradient(135deg,#fefcf7 0%,#f0e6f5 100%)}
.sub-hero::before{content:"";position:absolute;top:-80px;left:5%;width:280px;height:280px;background:radial-gradient(circle,rgba(18,168,112,.18),transparent 60%);filter:blur(40px)}
.sub-hero::after{content:"";position:absolute;bottom:-80px;right:5%;width:280px;height:280px;background:radial-gradient(circle,rgba(255,106,91,.14),transparent 60%);filter:blur(40px)}
.sub-hero > .container{position:relative;z-index:2}
.sub-hero h1{font-family:'Fraunces',serif;font-size:104px;line-height:.94;font-weight:400;letter-spacing:-3px;margin-bottom:28px}
.sub-hero h1 em{font-style:italic;color:var(--emerald)}
.sub-hero h1 .grad{background:linear-gradient(135deg,var(--coral),var(--lilac));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-style:italic}
.sub-hero p{font-family:'Fraunces',serif;font-size:22px;color:var(--ink);max-width:720px;margin:0 auto;font-style:italic}

/* Legal */
.legal{max-width:820px;margin:0 auto;padding:80px 32px 120px}
.legal h1{font-family:'Fraunces',serif;font-size:96px;line-height:.95;font-weight:400;letter-spacing:-3px;margin-bottom:32px}
.legal h1 em{font-style:italic;color:var(--emerald)}
.legal .updated{font-family:'Public Sans',sans-serif;font-size:12px;color:var(--muted);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:48px;font-weight:700;display:inline-block;padding:6px 14px;border:1px solid var(--line);border-radius:100px}
.legal h2{font-family:'Fraunces',serif;font-size:32px;font-weight:500;margin:42px 0 12px;letter-spacing:-.6px}
.legal h2 em{font-style:italic;color:var(--emerald)}
.legal p{font-family:'Public Sans',sans-serif;font-size:16px;line-height:1.7;color:var(--ink);margin-bottom:18px;font-weight:500}

@media (max-width:900px){
  .container,.foot-grid,.nav-inner{padding-left:20px;padding-right:20px}
  .hero-inner{grid-template-columns:1fr;gap:40px}
  .service-grid,.testis,.tiers,.stats-inner,.work-grid{grid-template-columns:1fr;gap:20px}
  .p-step{grid-template-columns:1fr;gap:16px}
  .hero-h,.section-h,.cta-band h2,.sub-hero h1{font-size:52px}
  .foot-grid{grid-template-columns:1fr 1fr}
  .nav-links{gap:16px}
  .btn-line{display:none}
}
