/* Exact CSS copied from uploaded index-figma-ready.html */
:root{
  --bg:#fff;
  --ink:#151313;
  --muted:#675f5b;
  --soft:#f2ece7;
  --line:#e8ddd6;
  --accent:#d95b48;
  --accent-2:#8b6b62;
  --peach:#fff0ec;
  --lavender:#f7efff;
  --mint:#effcf7;
  --blue:#f0f9ff;
  --cream:#fff7e8;
  --white:#ffffff;
  --black:#111111;
  --radius-xl:28px;
  --radius-lg:22px;
  --shadow:0 20px 60px rgba(44,33,28,.08);
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.page{overflow:hidden}.container{width:min(var(--container),calc(100% - 48px));margin:0 auto}.nav{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 56px;position:sticky;top:0;z-index:20;background:rgba(255,252,248,.86);backdrop-filter:blur(16px)}.brand{font-weight:800;letter-spacing:.03em}.brand::before{content:"✦";margin-right:10px}.menu{display:flex;gap:34px;font-size:13px;font-weight:650}.menu a{opacity:.78}.menu a.active,.menu a:hover{opacity:1;color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:13px 22px;background:var(--black);color:#fff;font-weight:800;font-size:13px;border:1px solid var(--black);min-height:46px}.btn.secondary{background:var(--white);color:var(--ink);border-color:var(--line)}.section{border:1px solid var(--line);border-radius:var(--radius-xl);padding:38px;background:var(--white);box-shadow:var(--shadow)}.section + .section{margin-top:28px}.eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:var(--accent-2);margin:0 0 12px}.section-title{font-size:34px;line-height:1.08;margin:0 0 12px;letter-spacing:-.04em}.section-intro{max-width:640px;color:var(--muted);margin:0}.soft-peach{background:var(--peach)}.soft-lavender{background:var(--lavender)}.soft-mint{background:var(--mint)}.soft-blue{background:var(--blue)}.soft-cream{background:var(--cream)}.card{background:rgba(255,255,255,.78);border:1px solid var(--line);border-radius:22px;padding:24px}.card h3{font-size:19px;line-height:1.15;margin:0 0 12px;letter-spacing:-.02em}.card p{margin:0;color:var(--muted);font-size:14px}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-5{grid-template-columns:repeat(5,1fr)}.grid-6{grid-template-columns:repeat(6,1fr)}

/* HOME */
.hero{padding:62px 0 28px}.hero-shell{display:grid;grid-template-columns:1.05fr .95fr;min-height:590px;gap:44px;align-items:center;position:relative}.decor-gradient{position:absolute;right:38px;top:55px;width:410px;height:380px;background:radial-gradient(circle at 40% 40%,rgba(118,209,255,.35),transparent 32%),radial-gradient(circle at 58% 52%,rgba(255,128,210,.36),transparent 32%),radial-gradient(circle at 70% 28%,rgba(255,221,122,.4),transparent 28%);filter:blur(6px);border-radius:999px;opacity:.85;z-index:0}.hero-copy,.portrait-wrap{position:relative;z-index:1}.hero h1{font-size:82px;line-height:.95;letter-spacing:-.08em;margin:0 0 12px}.hero h1 span{font-weight:400}.hero h2{font-size:31px;font-weight:500;margin:0 0 28px;letter-spacing:-.03em}.hero p{max-width:610px;color:var(--muted);font-size:17px}.proof-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:28px 0 32px;padding:0;list-style:none}.proof-list li{font-size:14px;font-weight:650}.proof-list li::before{content:"○";margin-right:9px;color:var(--accent)}.hero-actions{display:flex;gap:14px;align-items:center}.portrait-card{width:470px;margin-left:auto;border-radius:34px;background:#fff;border:1px solid var(--line);padding:20px;box-shadow:0 24px 80px rgba(30,22,18,.12);position:relative}.portrait-card img{height:500px;width:100%;object-fit:cover;border-radius:24px;object-position:center}.stats-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:28px;padding:18px;border-radius:22px;border:1px solid #f0d8d3;background:#fff0ec}.stat{background:rgba(255,255,255,.74);border:1px solid #eaded8;border-radius:18px;padding:17px 18px;min-height:92px}.stat strong{display:block;font-size:28px;line-height:1;letter-spacing:-.04em}.stat span{font-size:12px;color:var(--muted);font-weight:650}.about-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:stretch}.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font-size:12px;font-weight:650;color:#554b47}.info-panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px}.info-panel dl{margin:0;display:grid;gap:22px}.info-panel dt{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-2);font-weight:900}.info-panel dd{margin:4px 0 0;font-weight:750}.skill-cards{grid-template-columns:repeat(6,1fr);margin-top:28px}.skill-cards .card{min-height:170px}.experience-grid{display:grid;grid-template-columns:1.6fr .8fr;gap:30px;margin-top:28px}.timeline{display:grid;gap:22px}.timeline-row{display:grid;grid-template-columns:145px 1fr;gap:32px;position:relative}.timeline-row::before{content:"";width:8px;height:8px;background:#111;border-radius:50%;position:absolute;left:162px;top:8px}.timeline-date{font-size:13px;color:var(--muted);font-weight:650}.timeline-role{font-weight:850;font-size:17px}.timeline-desc{color:var(--muted);font-size:14px}.category-cards{grid-template-columns:repeat(6,1fr);margin-top:30px}.category-cards .card{min-height:155px}.case-grid{grid-template-columns:repeat(5,1fr);margin-top:28px}.case-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.2s ease;box-shadow:0 12px 34px rgba(44,33,28,.04)}.case-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(44,33,28,.12)}.case-card img{width:100%;height:156px;object-fit:cover}.case-card-body{padding:18px}.case-card small{font-size:11px;color:var(--accent);font-weight:900;text-transform:uppercase}.case-card h3{font-size:18px;margin:8px 0 8px;letter-spacing:-.03em;line-height:1.15}.result{font-size:24px;font-weight:900;letter-spacing:-.04em}.brand-row{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:26px}.brand-pill{background:#fff;border:1px solid var(--line);border-radius:999px;padding:12px 18px;font-weight:900;font-size:13px}.testimonial{display:grid;grid-template-columns:1fr 260px;gap:34px;align-items:center}.quote{font-size:28px;line-height:1.22;letter-spacing:-.04em;font-weight:650;margin:0}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr .8fr;gap:30px;align-items:start}.form-placeholder{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.input-line{height:44px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:12px;color:#978d88;font-size:13px}.input-line.message{grid-column:1/-1;height:96px}.footer{padding:32px 0 54px;color:#6e6762;font-size:13px;display:flex;justify-content:space-between}

/* PROJECT DETAIL */
.project-hero{padding:20px 0 30px}.back{color:var(--muted);font-weight:650;font-size:14px;margin-bottom:20px;display:inline-block}.project-hero-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.project-hero h1{font-size:72px;line-height:.98;letter-spacing:-.07em;margin:12px 0}.project-hero .lead{font-size:18px;color:var(--muted);max-width:520px}.tag{display:inline-block;font-size:12px;font-weight:900;color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.hero-visual img{height:410px;width:100%;object-fit:cover;border-radius:24px;border:1px solid var(--line)}.info-bar{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid var(--line);border-radius:22px;background:#fff;margin-top:44px;overflow:hidden}.info-item{padding:26px;border-right:1px solid var(--line)}.info-item:last-child{border-right:0}.info-item b{display:block;font-size:11px;color:var(--accent-2);text-transform:uppercase;letter-spacing:.1em}.info-item span{display:block;margin-top:10px;font-size:15px;font-weight:750}.overview-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}.overview-card{min-height:240px}.overview-card.results strong{display:block;color:var(--accent);font-size:28px;line-height:1.15}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:24px}.process-step{position:relative;text-align:center;padding:22px 26px}.process-step::before{content:"";height:1px;background:#e8c9c2;position:absolute;top:42px;left:0;right:0}.num{position:relative;z-index:1;width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fde3de;color:var(--accent);font-weight:900}.process-step h3{font-size:16px;margin:16px 0 10px}.process-step p{font-size:14px;color:var(--muted);margin:0}.visual-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.visual-grid img{height:190px;width:100%;object-fit:cover;border-radius:18px;border:1px solid var(--line)}.role-list{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin:0;padding:0;list-style:none}.role-list li{border-right:1px solid var(--line);padding-right:16px;font-size:14px;color:var(--muted)}.role-list li:last-child{border-right:0}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.related-card{display:grid;grid-template-columns:110px 1fr;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px}.related-card img{width:110px;height:88px;object-fit:cover;border-radius:14px}.related-card h3{margin:0 0 6px;font-size:17px}.related-card span{font-size:13px;color:var(--accent);font-weight:750}.cta-banner{display:flex;justify-content:space-between;align-items:center;padding:34px 42px;border-radius:22px;border:1px solid #f0d1ca;background:linear-gradient(120deg,#fff2ee,#fff8f3)}

/* Utility classes for import/editing */
[data-editable="text"]{outline-offset:4px}[data-editable="image"]{background:#eee}.template-note{font-size:12px;color:#938a85;margin-top:12px}
.tool-logo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.tool-logo{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px 12px;min-height:54px;box-shadow:0 8px 20px rgba(44,33,28,.04)}
.tool-logo svg{width:28px;height:28px;flex:0 0 28px;display:block}.tool-logo span{font-size:12px;font-weight:850;color:var(--ink);letter-spacing:-.01em;line-height:1.15}.tool-logo small{display:block;font-size:10px;color:var(--muted);font-weight:650;margin-top:2px}
@media (max-width:1100px){.tool-logo-grid{grid-template-columns:repeat(2,1fr)}}
.mt{margin-top:28px}.mb{margin-bottom:28px}.hide{display:none}

@media (max-width:1100px){.nav{padding:0 24px}.menu{display:none}.hero-shell,.about-layout,.experience-grid,.project-hero-grid,.contact-grid,.testimonial{grid-template-columns:1fr}.portrait-card{margin:0;width:100%}.stats-strip,.skill-cards,.category-cards,.case-grid,.grid-5,.grid-6{grid-template-columns:repeat(2,1fr)}.info-bar,.overview-grid,.process,.visual-grid,.role-list,.related-grid{grid-template-columns:1fr}.info-item{border-right:0;border-bottom:1px solid var(--line)}.hero h1,.project-hero h1{font-size:52px}.section{padding:26px}.circle-badge{right:18px}}
@media (max-width:640px){.container{width:min(100% - 28px, var(--container))}.hero h1,.project-hero h1{font-size:42px}.stats-strip,.skill-cards,.category-cards,.case-grid,.grid-2,.grid-3,.grid-4,.grid-5,.grid-6{grid-template-columns:1fr}.proof-list{grid-template-columns:1fr}.hero-actions{flex-direction:column;align-items:stretch}.btn{width:100%}.section-title{font-size:28px}.contact-grid{grid-template-columns:1fr}.form-placeholder{grid-template-columns:1fr}.visual-grid img{height:220px}.role-list li{border-right:0;border-bottom:1px solid var(--line);padding-bottom:12px}.footer{display:block}.footer div+div{margin-top:10px}}


/* FIGMA IMPORT NOTES: all key assets are embedded as base64 data URIs. No external image/icon library required. */
.case-card img,.hero-visual img,.visual-grid img,.related-card img,.portrait-card img{background:#f4eee9;}
.generic-icon{display:inline-flex;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;align-items:center;justify-content:center;margin-right:8px;font-size:12px;font-weight:800;color:var(--accent);background:#fff;}


.brand-logo-grid{display:grid;grid-template-columns:repeat(11,minmax(92px,1fr));gap:14px;align-items:center;margin-top:28px}
.brand-logo-card{height:72px;border:1px solid var(--line);background:#fff;border-radius:18px;display:flex;align-items:center;justify-content:center;padding:12px;box-shadow:0 8px 22px rgba(45,34,28,.035)}
.brand-logo-card svg{width:100%;height:42px;display:block}
@media (max-width:1100px){.brand-logo-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:640px){.brand-logo-grid{grid-template-columns:repeat(2,1fr)}}


.brand-image-strip{
  display:grid;
  grid-template-columns:repeat(11,minmax(70px,1fr));
  gap:28px;
  align-items:center;
  margin-top:28px;
}
.brand-demo-logo{
  width:100%;
  height:58px;
  object-fit:contain;
  filter:grayscale(100%);
  opacity:.86;
  mix-blend-mode:multiply;
}
.brand-demo-logo:hover{
  filter:grayscale(0%);
  opacity:1;
}
@media(max-width:1100px){
  .brand-image-strip{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:640px){
  .brand-image-strip{grid-template-columns:repeat(2,1fr)}
}


/* Updated trusted-brand logo layout: image-only, 2 rows x 6 logos */
.brand-image-strip.two-row-logos{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  grid-auto-rows:70px;
  gap:26px 42px;
  align-items:center;
  justify-items:center;
  margin-top:30px;
}
.brand-image-strip.two-row-logos .brand-demo-logo{
  width:100%;
  max-width:132px;
  height:64px;
  object-fit:contain;
  filter:grayscale(100%);
  opacity:.9;
  mix-blend-mode:multiply;
  transition:.2s ease;
}
.brand-image-strip.two-row-logos .brand-demo-logo:hover{
  filter:grayscale(0%);
  opacity:1;
}
@media(max-width:900px){
  .brand-image-strip.two-row-logos{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:560px){
  .brand-image-strip.two-row-logos{grid-template-columns:repeat(2,1fr)}
}


.footer-cta-clean{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:48px;
  align-items:center;
}
.footer-cta-clean h2{
  font-size:44px;
  line-height:1.05;
  letter-spacing:-.055em;
  margin:0 0 18px;
  max-width:620px;
}
.footer-cta-clean p{
  color:var(--muted);
  font-size:16px;
  max-width:620px;
}
.cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:30px;
}
.contact-card-clean{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:30px;
  box-shadow:0 14px 34px rgba(44,33,28,.06);
}
.contact-card-clean p{
  margin:0 0 20px;
  font-size:15px;
}
.contact-card-clean p:last-child{
  margin-bottom:0;
}
.contact-label{
  font-size:11px!important;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:900;
  color:var(--accent)!important;
  margin-bottom:24px!important;
}
@media(max-width:900px){
  .footer-cta-clean{grid-template-columns:1fr}
  .footer-cta-clean h2{font-size:36px}
}


/* Updated education section with editable image/logo support */
.education-logo-section{
  padding:42px;
}
.section-head-row{
  display:grid;
  grid-template-columns:1fr 360px;
  gap:34px;
  align-items:end;
  margin-bottom:30px;
}
.section-head-row h2{
  margin:8px 0 0;
  font-size:32px;
  line-height:1.08;
  letter-spacing:-.05em;
  max-width:680px;
}
.section-note{
  color:var(--muted);
  font-size:14px;
  margin:0;
}
.education-grid-with-logos{
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr 1fr;
  gap:18px;
  align-items:stretch;
}
.edu-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:22px;
  display:grid;
  grid-template-columns:72px 1fr;
  gap:18px;
  align-items:center;
  min-height:152px;
  box-shadow:0 12px 30px rgba(44,33,28,.045);
}
.edu-card.featured-edu{
  grid-template-columns:120px 1fr;
  min-height:178px;
}
.edu-logo-wrap{
  width:72px;
  height:72px;
  border-radius:20px;
  background:#fff8f6;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid #f0e3de;
}
.edu-logo-wrap.large{
  width:112px;
  height:112px;
  border-radius:28px;
}
.edu-logo-wrap img{
  width:82%;
  height:82%;
  object-fit:contain;
  display:block;
}
.edu-logo-wrap.large img{
  width:100%;
  height:100%;
}
.edu-type{
  margin:0 0 8px!important;
  font-size:10px!important;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:900;
  color:var(--accent)!important;
}
.edu-card h3{
  margin:0 0 8px;
  font-size:18px;
  line-height:1.1;
  letter-spacing:-.03em;
}
.edu-card p{
  margin:0;
  font-size:13px;
  color:var(--muted);
  line-height:1.45;
}
.edu-card span{
  display:inline-flex;
  margin-top:12px;
  font-size:12px;
  font-weight:700;
  color:#7b625d;
}
@media(max-width:1100px){
  .education-grid-with-logos{grid-template-columns:1fr 1fr}
  .section-head-row{grid-template-columns:1fr}
}
@media(max-width:640px){
  .education-grid-with-logos{grid-template-columns:1fr}
  .edu-card,.edu-card.featured-edu{grid-template-columns:84px 1fr}
  .edu-logo-wrap.large{width:84px;height:84px;border-radius:22px}
}


/* Refined education cards: logo sits on the same line as the heading, aligned right */
.education-logo-right-section{
  padding:42px;
}
.section-head-row.compact{
  display:block;
  margin-bottom:30px;
}
.section-head-row.compact h2{
  max-width:760px;
}
.education-grid-heading-logos{
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr 1fr;
  gap:18px;
  align-items:stretch;
}
.edu-card-heading-logo{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:24px;
  min-height:170px;
  box-shadow:0 12px 30px rgba(44,33,28,.045);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.edu-card-heading-logo.featured-edu{
  min-height:190px;
}
.edu-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.edu-title-row h3{
  margin:0;
  font-size:19px;
  line-height:1.12;
  letter-spacing:-.035em;
  max-width:230px;
}
.edu-logo-right{
  width:58px;
  height:58px;
  object-fit:contain;
  flex:0 0 auto;
  border-radius:14px;
}
.edu-logo-right.large{
  width:76px;
  height:76px;
  border-radius:18px;
}
.edu-card-heading-logo p:not(.edu-type){
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
}
.edu-card-heading-logo span{
  display:inline-flex;
  margin-top:14px;
  font-size:12px;
  font-weight:700;
  color:#7b625d;
}
@media(max-width:1100px){
  .education-grid-heading-logos{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .education-grid-heading-logos{grid-template-columns:1fr}
  .edu-logo-right.large{width:64px;height:64px}
}


/* Refined testimonial block: heading is now a separate large line */
.testimonial-section-refined{
  padding:42px;
}
.testimonial-heading{
  margin:0 0 30px;
  font-size:34px;
  line-height:1.08;
  letter-spacing:-.055em;
  color:var(--ink);
}
.testimonial-content{
  display:grid;
  grid-template-columns:1fr 320px;
  gap:42px;
  align-items:center;
}
.testimonial-content .quote{
  font-size:28px;
  line-height:1.25;
  letter-spacing:-.04em;
  font-weight:650;
  margin:0;
  max-width:780px;
}
.testimonial-author{
  display:grid;
  grid-template-columns:104px 1fr;
  gap:18px;
  align-items:center;
  background:rgba(255,255,255,.55);
  border:1px solid var(--line);
  border-radius:24px;
  padding:20px;
}
.testimonial-author img{
  width:104px;
  height:104px;
  object-fit:cover;
  border-radius:999px;
}
.reviewer-placeholder{
  width:104px;
  height:104px;
  border-radius:999px;
  background:linear-gradient(135deg,#efe6ed,#fff);
  border:1px solid var(--line);
}
.testimonial-author h3{
  margin:0 0 8px;
  font-size:18px;
  letter-spacing:-.03em;
}
.testimonial-author p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
}
@media(max-width:900px){
  .testimonial-content{grid-template-columns:1fr}
  .testimonial-heading{font-size:30px}
  .testimonial-content .quote{font-size:24px}
}


/* Updated testimonial title: back to small eyebrow style */
.testimonial-section-refined .testimonial-heading{
  font-size:11px!important;
  line-height:1.2!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  color:#8b6b62!important;
  margin:0 0 26px!important;
}


/* Header contact info replaces Contact Me button */
.header-contact-info{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:center;
  gap:2px;
  font-size:12px;
  line-height:1.25;
  color:var(--ink);
  font-weight:700;
  white-space:nowrap;
}
.header-contact-info a{
  color:var(--ink);
  text-decoration:none;
}
.header-contact-info span{
  color:#8b6b62;
  font-weight:650;
}
@media(max-width:900px){
  .header-contact-info{
    display:none;
  }
}


/* Featured case studies CTA */
.featured-more-wrap{
  display:flex;
  justify-content:center;
  margin-top:32px;
}
.featured-more-btn{
  min-width:150px;
  padding-left:28px;
  padding-right:28px;
}



/* Hover interaction for Featured Case Studies - Xem thêm button */
.featured-more-btn{
  position:relative;
  overflow:hidden;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
}
.featured-more-btn:hover{
  transform:translateY(-3px);
  background:var(--accent);
  border-color:var(--accent);
  color:#fff;
  box-shadow:0 16px 34px rgba(232,91,70,.28);
}
.featured-more-btn:active{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(232,91,70,.22);
}


/* Align text rows inside Featured Case Studies cards */
#projects .case-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
#projects .case-card img{
  height:156px;
  flex:0 0 156px;
}
#projects .case-card-body{
  display:flex;
  flex-direction:column;
  flex:1;
  min-height:178px;
}
#projects .case-card small{
  display:block;
  min-height:16px;
}
#projects .case-card h3{
  min-height:44px;
  display:flex;
  align-items:flex-start;
}
#projects .case-card .result{
  margin-top:auto;
  min-height:32px;
  display:flex;
  align-items:flex-end;
}


/* Corrected alignment for the actual Featured Case Studies section */
.featured-case-section .case-grid{
  align-items:stretch;
}
.featured-case-section .case-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}
.featured-case-section .case-card img{
  height:156px!important;
  flex:0 0 156px!important;
  object-fit:cover!important;
}
.featured-case-section .case-card-body{
  height:188px!important;
  min-height:188px!important;
  padding:18px!important;
  display:grid!important;
  grid-template-rows:18px 50px 1fr 34px 20px!important;
  row-gap:6px!important;
  align-content:stretch!important;
}
.featured-case-section .case-card small{
  grid-row:1!important;
  display:block!important;
  line-height:16px!important;
  min-height:16px!important;
  margin:0!important;
}
.featured-case-section .case-card h3{
  grid-row:2!important;
  min-height:50px!important;
  margin:0!important;
  display:flex!important;
  align-items:flex-start!important;
  line-height:1.15!important;
}
.featured-case-section .case-card .result{
  grid-row:4!important;
  margin:0!important;
  min-height:34px!important;
  display:flex!important;
  align-items:flex-end!important;
  line-height:1!important;
}
.featured-case-section .case-card-body > p{
  grid-row:5!important;
  margin:0!important;
  min-height:20px!important;
  line-height:20px!important;
  color:var(--muted)!important;
  font-size:13px!important;
}


/* Refined Project Categories section */
.project-category-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 12%, rgba(232,91,70,.12), transparent 28%),
    radial-gradient(circle at 94% 6%, rgba(139,107,98,.11), transparent 24%),
    var(--mint);
}
.category-heading-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:32px;
  margin-bottom:30px;
}
.category-section-link{
  flex:0 0 auto;
  font-size:13px;
  font-weight:800;
  color:var(--ink);
  border-bottom:1px solid rgba(21,19,19,.25);
  padding-bottom:4px;
  transition:color .22s ease, border-color .22s ease, transform .22s ease;
}
.category-section-link:hover{
  color:var(--accent);
  border-color:var(--accent);
  transform:translateX(4px);
}
.category-cards-refined{
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.category-card-refined{
  position:relative;
  min-height:190px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(231,221,215,.95);
  border-radius:26px;
  padding:26px;
  overflow:hidden;
  box-shadow:0 14px 34px rgba(44,33,28,.045);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}
.category-card-refined::before{
  content:"";
  position:absolute;
  inset:auto -20px -70px auto;
  width:150px;
  height:150px;
  border-radius:999px;
  background:rgba(232,91,70,.12);
  transition:transform .28s ease, opacity .28s ease;
}
.category-card-refined::after{
  content:"";
  position:absolute;
  left:26px;
  right:26px;
  top:78px;
  height:1px;
  background:linear-gradient(90deg, rgba(139,107,98,.25), transparent);
}
.category-index{
  position:absolute;
  left:26px;
  top:24px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  color:#8b6b62;
}
.category-arrow{
  position:absolute;
  right:22px;
  top:18px;
  width:38px;
  height:38px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  color:var(--ink);
  transition:transform .25s ease, background .25s ease, color .25s ease, border-color .25s ease;
}
.category-card-refined h3{
  position:relative;
  margin:0 0 12px;
  font-size:21px;
  line-height:1.08;
  letter-spacing:-.045em;
  color:var(--ink);
  max-width:270px;
}
.category-card-refined p{
  position:relative;
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
  max-width:285px;
}
.category-card-refined:hover{
  transform:translateY(-8px);
  background:#fff;
  border-color:rgba(232,91,70,.45);
  box-shadow:0 24px 58px rgba(44,33,28,.14);
}
.category-card-refined:hover::before{
  transform:scale(1.22) translate(-8px,-8px);
  opacity:1;
}
.category-card-refined:hover .category-arrow{
  transform:translate(3px,-3px);
  background:var(--accent);
  color:#fff;
  border-color:var(--accent);
}
.category-card-refined:hover .category-index{
  color:var(--accent);
}
@media(max-width:1050px){
  .category-cards-refined{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .category-heading-row{display:block}
  .category-section-link{display:inline-flex;margin-top:18px}
  .category-cards-refined{grid-template-columns:1fr}
}


/* General link and button hover interactions across the template */
a{
  transition:color .22s ease, opacity .22s ease, transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}
.menu a{
  position:relative;
}
.menu a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:2px;
  background:var(--accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .22s ease;
}
.menu a:hover::after,
.menu a.active::after{
  transform:scaleX(1);
}
.btn{
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease, color .22s ease, border-color .22s ease!important;
}
.btn:hover{
  transform:translateY(-3px);
  background:var(--accent);
  border-color:var(--accent);
  color:#fff;
  box-shadow:0 16px 34px rgba(232,91,70,.28);
}
.btn.secondary:hover{
  background:var(--ink);
  border-color:var(--ink);
  color:#fff;
  box-shadow:0 16px 34px rgba(21,19,19,.18);
}
.header-contact-info a:hover{
  color:var(--accent);
  transform:translateX(-2px);
}
.back-link:hover,
.next-link:hover,
.related-card:hover,
.project-link:hover{
  color:var(--accent);
}


/* Category cards refinement: make all blocks visually consistent like card 02 */
.category-card-refined{
  min-height:210px!important;
  justify-content:flex-start!important;
  padding:30px!important;
}
.category-card-refined::after{
  content:none!important;
  display:none!important;
}
.category-card-refined .category-index{
  left:30px!important;
  top:28px!important;
}
.category-card-refined .category-arrow{
  right:28px!important;
  top:24px!important;
}
.category-card-refined h3{
  margin:74px 0 16px!important;
  min-height:52px!important;
  display:flex!important;
  align-items:flex-start!important;
  font-size:22px!important;
  line-height:1.05!important;
  max-width:315px!important;
}
.category-card-refined p{
  min-height:46px!important;
  font-size:15px!important;
  line-height:1.42!important;
  max-width:330px!important;
}
.category-card-refined::before{
  width:165px!important;
  height:165px!important;
  right:-28px!important;
  bottom:-78px!important;
}


/* Compact line spacing for Project Categories cards */
.category-card-refined h3{
  line-height:1!important;
  margin:70px 0 10px!important;
  min-height:46px!important;
  letter-spacing:-.055em!important;
}
.category-card-refined p{
  line-height:1.28!important;
  min-height:38px!important;
  margin-top:0!important;
}
.category-card-refined{
  min-height:198px!important;
}


/* Requested adjustment: reduce top margin of Project Categories card title */
.category-card-refined h3{
  margin-top:45px!important;
}



/* Corrected block backgrounds: keep each block's color base, use Project Categories styling */
.section{
  position:relative;
  overflow:hidden;
}

/* Peach base */
.section.soft-peach,
#contact.section,
main > .soft-peach:last-of-type{
  background:
    radial-gradient(circle at 8% 12%, rgba(232,91,70,.12), transparent 28%),
    radial-gradient(circle at 94% 6%, rgba(139,107,98,.10), transparent 24%),
    linear-gradient(135deg,#fff2ee 0%,#fffaf6 50%,#fff0eb 100%)!important;
  border-color:#eaded8!important;
}

/* Lavender base */
.section.soft-lavender,
.testimonial-section-refined{
  background:
    radial-gradient(circle at 8% 12%, rgba(171,126,232,.12), transparent 28%),
    radial-gradient(circle at 94% 6%, rgba(232,91,70,.08), transparent 24%),
    linear-gradient(135deg,#f8f1ff 0%,#fff8fb 52%,#f3ecff 100%)!important;
  border-color:#eadff1!important;
}

/* Blue base */
.section.soft-blue{
  background:
    radial-gradient(circle at 8% 12%, rgba(92,181,255,.13), transparent 28%),
    radial-gradient(circle at 94% 6%, rgba(139,107,98,.08), transparent 24%),
    linear-gradient(135deg,#f2faff 0%,#fbfdff 52%,#edf8ff 100%)!important;
  border-color:#dcebf2!important;
}

/* Cream base */
.section.soft-cream,
#featured-cases.featured-case-section{
  background:
    radial-gradient(circle at 8% 12%, rgba(232,91,70,.10), transparent 28%),
    radial-gradient(circle at 94% 6%, rgba(214,158,46,.10), transparent 24%),
    linear-gradient(135deg,#fff8e8 0%,#fffaf3 50%,#fff3df 100%)!important;
  border-color:#eadfcd!important;
}

/* Mint base — keep close to Project Categories style */
.section.soft-mint,
.project-category-section,
.education-logo-section,
.education-logo-right-section{
  background:
    radial-gradient(circle at 8% 12%, rgba(232,91,70,.12), transparent 28%),
    radial-gradient(circle at 94% 6%, rgba(139,107,98,.11), transparent 24%),
    linear-gradient(135deg,#f4fff8 0%,#fffaf3 48%,#fff4ee 100%);
  border-color:#eaded8;
}

/* Keep hero-shell untouched: no override here by request */


/* Requested Project Categories refinement */
.category-card-refined::before{
  content:none!important;
  display:none!important;
}
.category-heading-row{
  display:block!important;
}
.category-card-cta{
  background:#fff!important;
  border-color:rgba(232,91,70,.36)!important;
}
.category-card-cta h3{
  color:var(--accent)!important;
}
.category-card-cta:hover{
  background:var(--accent)!important;
  border-color:var(--accent)!important;
}
.category-card-cta:hover h3,
.category-card-cta:hover p,
.category-card-cta:hover .category-index{
  color:#fff!important;
}
.category-card-cta:hover .category-arrow{
  background:#fff!important;
  color:var(--accent)!important;
  border-color:#fff!important;
}


/* Refined hero: full-width premium banner */
.hero.container{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:28px 32px 28px!important;
}
.hero-shell{
  width:100%!important;
  min-height:680px!important;
  grid-template-columns:1.08fr .92fr!important;
  gap:58px!important;
  align-items:center!important;
  padding:72px clamp(56px,6vw,104px)!important;
  border:1px solid #eaded8!important;
  border-radius:42px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 12% 18%, rgba(232,91,70,.16), transparent 30%),
    radial-gradient(circle at 86% 8%, rgba(139,107,98,.14), transparent 28%),
    linear-gradient(135deg,#fff7ef 0%,#fffdf8 46%,#f4fff8 100%)!important;
  box-shadow:0 26px 80px rgba(44,33,28,.10)!important;
}
.hero-shell::before{
  content:"";
  position:absolute;
  inset:24px;
  border-radius:32px;
  border:1px solid rgba(255,255,255,.75);
  pointer-events:none;
  z-index:0;
}
.hero-shell::after{
  content:"";
  position:absolute;
  right:-120px;
  bottom:-160px;
  width:520px;
  height:520px;
  border-radius:999px;
  background:rgba(232,91,70,.10);
  filter:blur(4px);
  pointer-events:none;
  z-index:0;
}
.hero-copy{
  max-width:690px!important;
}
.hero h1{
  font-size:clamp(64px,7vw,104px)!important;
  line-height:.9!important;
  margin-bottom:18px!important;
}
.hero h2{
  font-size:clamp(26px,2.6vw,40px)!important;
  line-height:1.08!important;
  margin-bottom:24px!important;
}
.hero p{
  max-width:640px!important;
  font-size:18px!important;
  line-height:1.68!important;
}
.proof-list{
  max-width:680px!important;
  margin:30px 0 34px!important;
  gap:12px 28px!important;
}
.hero-actions .btn{
  min-width:168px!important;
}
.portrait-card{
  width:min(470px,100%)!important;
  margin-left:auto!important;
  border-radius:36px!important;
  background:rgba(255,255,255,.82)!important;
  backdrop-filter:blur(10px)!important;
  box-shadow:0 28px 90px rgba(44,33,28,.16)!important;
}
.portrait-card img{
  height:520px!important;
}
.circle-badge{
  right:-34px!important;
  top:132px!important;
  background:linear-gradient(135deg,#151313,#33251f)!important;
  box-shadow:0 18px 46px rgba(21,19,19,.22)!important;
}
.decor-gradient{
  right:18%!important;
  top:42px!important;
  width:540px!important;
  height:460px!important;
  opacity:.65!important;
  filter:blur(14px)!important;
}
@media(max-width:980px){
  .hero.container{padding:20px 18px!important}
  .hero-shell{
    grid-template-columns:1fr!important;
    padding:48px 28px!important;
    border-radius:32px!important;
  }
  .portrait-card{
    margin:20px auto 0!important;
    width:min(440px,100%)!important;
  }
  .circle-badge{
    right:16px!important;
  }
}
@media(max-width:640px){
  .hero h1{font-size:54px!important}
  .hero h2{font-size:24px!important}
  .proof-list{grid-template-columns:1fr!important}
  .hero-actions{flex-direction:column;align-items:stretch!important}
  .portrait-card img{height:420px!important}
}


/* Hero portrait image updated: keep current hero style, only improve object fit for the new white-suit portrait */
.portrait-card img{
  object-position:center top!important;
}


/* Hero banner refinement: edge-to-edge, no border, no rounded frame, circular visual background */
.hero.container{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.hero-shell{
  width:100%!important;
  min-height:690px!important;
  grid-template-columns:1.03fr .97fr!important;
  gap:42px!important;
  align-items:center!important;
  padding:72px clamp(48px,6vw,116px) 62px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 78% 26%, rgba(255,105,180,.12), transparent 30%),
    radial-gradient(circle at 88% 72%, rgba(132,91,255,.12), transparent 28%),
    radial-gradient(circle at 10% 85%, rgba(232,91,70,.08), transparent 32%),
    linear-gradient(135deg,#fffaf7 0%,#fffefd 44%,#f6fff9 100%)!important;
}
.hero-shell::before{
  content:none!important;
  display:none!important;
}
.hero-shell::after{
  content:"";
  position:absolute;
  right:-18vw;
  bottom:-28vw;
  width:56vw;
  height:56vw;
  border-radius:999px;
  background:rgba(232,91,70,.055);
  filter:blur(2px);
  pointer-events:none;
  z-index:0;
}
.decor-gradient{
  right:16%!important;
  top:76px!important;
  width:620px!important;
  height:520px!important;
  opacity:.46!important;
  filter:blur(18px)!important;
}
.hero-copy{
  max-width:690px!important;
  position:relative!important;
  z-index:2!important;
}
.hero h1{
  font-size:clamp(64px,7vw,106px)!important;
  line-height:.9!important;
  margin-bottom:18px!important;
}
.hero h2{
  font-size:clamp(26px,2.6vw,40px)!important;
  line-height:1.08!important;
}
.hero p{
  max-width:640px!important;
  font-size:18px!important;
  line-height:1.68!important;
}
.portrait-wrap{
  position:relative!important;
  z-index:1!important;
  min-height:590px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
}
.portrait-wrap::before{
  content:"";
  position:absolute;
  width:min(560px,45vw);
  height:min(560px,45vw);
  right:clamp(58px,8vw,150px);
  top:32px;
  border-radius:999px;
  background:
    radial-gradient(circle at 35% 30%, rgba(255,245,239,.96), rgba(255,212,225,.76) 42%, rgba(158,119,255,.22) 76%, rgba(255,255,255,0) 100%);
  z-index:0;
}
.portrait-wrap::after{
  content:"";
  position:absolute;
  width:min(680px,54vw);
  height:min(680px,54vw);
  right:clamp(-120px,-3vw,-40px);
  top:0;
  border-radius:999px;
  background:repeating-radial-gradient(circle, rgba(139,107,98,.08) 0 1px, transparent 1px 8px);
  opacity:.35;
  z-index:0;
  pointer-events:none;
}
.portrait-card{
  width:min(500px,40vw)!important;
  margin:0 clamp(110px,12vw,210px) 0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  position:relative!important;
  z-index:2!important;
}
.portrait-card img{
  height:590px!important;
  width:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  border-radius:0!important;
  border:0!important;
  background:transparent!important;
  filter:drop-shadow(0 24px 40px rgba(44,33,28,.10));
}
.circle-badge{
  display:none!important;
}
.hero-script-words{
  position:absolute;
  right:clamp(40px,6vw,108px);
  top:145px;
  z-index:3;
  display:flex;
  flex-direction:column;
  gap:6px;
  transform:rotate(-5deg);
  pointer-events:none;
}
.hero-script-words span{
  font-family:"Brush Script MT","Segoe Script","Comic Sans MS",cursive;
  font-size:clamp(28px,3vw,54px);
  line-height:.92;
  font-weight:400;
  letter-spacing:-.02em;
  color:#875cff;
  text-shadow:0 10px 24px rgba(135,92,255,.12);
}
.hero-script-words span:nth-child(2){
  color:#f1458d;
  margin-left:36px;
}
.hero-script-words span:nth-child(3){
  color:#a985ff;
  margin-left:70px;
}
@media(max-width:980px){
  .hero-shell{
    grid-template-columns:1fr!important;
    padding:54px 28px 42px!important;
    min-height:auto!important;
  }
  .portrait-wrap{
    min-height:520px!important;
  }
  .portrait-card{
    width:min(430px,88vw)!important;
    margin:0 auto!important;
  }
  .portrait-card img{
    height:500px!important;
  }
  .portrait-wrap::before{
    right:50%;
    transform:translateX(50%);
    width:480px;
    height:480px;
  }
  .hero-script-words{
    right:8%;
    top:48px;
  }
}
@media(max-width:640px){
  .hero h1{font-size:54px!important}
  .hero h2{font-size:24px!important}
  .proof-list{grid-template-columns:1fr!important}
  .hero-actions{flex-direction:column;align-items:stretch!important}
  .portrait-wrap{min-height:420px!important}
  .portrait-card img{height:420px!important}
  .hero-script-words span{font-size:30px}
}


/* Final hero refinement: transparent cutout portrait + soft circular background */
.hero.container{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
.hero-shell{
  width:100%!important;
  min-height:700px!important;
  grid-template-columns:1.04fr .96fr!important;
  gap:34px!important;
  align-items:center!important;
  padding:74px clamp(48px,6vw,116px) 48px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 82% 28%, rgba(232,91,70,.09), transparent 30%),
    radial-gradient(circle at 90% 78%, rgba(135,92,255,.11), transparent 28%),
    radial-gradient(circle at 9% 88%, rgba(255,105,180,.08), transparent 32%),
    linear-gradient(135deg,#fffaf7 0%,#fffefd 48%,#f4fff8 100%)!important;
}
.hero-shell::before{
  content:none!important;
  display:none!important;
}
.hero-shell::after{
  content:"";
  position:absolute;
  right:-18vw;
  bottom:-30vw;
  width:58vw;
  height:58vw;
  border-radius:999px;
  background:rgba(232,91,70,.045);
  pointer-events:none;
  z-index:0;
}
.hero-copy{
  max-width:700px!important;
  position:relative!important;
  z-index:3!important;
}
.hero h1{
  font-size:clamp(64px,7vw,104px)!important;
  line-height:.9!important;
  margin-bottom:18px!important;
}
.hero h2{
  font-size:clamp(26px,2.6vw,40px)!important;
  line-height:1.08!important;
  margin-bottom:24px!important;
}
.hero p{
  max-width:650px!important;
  font-size:18px!important;
  line-height:1.68!important;
}
.portrait-wrap{
  position:relative!important;
  z-index:1!important;
  min-height:600px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
}
.portrait-wrap::before{
  content:"";
  position:absolute;
  width:min(585px,45vw);
  height:min(585px,45vw);
  right:clamp(70px,8.2vw,165px);
  top:34px;
  border-radius:999px;
  background:
    radial-gradient(circle at 36% 32%, rgba(255,255,255,.96), rgba(255,221,226,.70) 42%, rgba(168,125,255,.24) 76%, rgba(255,255,255,0) 100%);
  z-index:0;
}
.portrait-wrap::after{
  content:"";
  position:absolute;
  width:min(720px,55vw);
  height:min(720px,55vw);
  right:clamp(-120px,-4vw,-42px);
  top:-10px;
  border-radius:999px;
  background:repeating-radial-gradient(circle, rgba(139,107,98,.075) 0 1px, transparent 1px 8px);
  opacity:.32;
  z-index:0;
  pointer-events:none;
}
.portrait-card{
  width:min(520px,41vw)!important;
  margin:0 clamp(118px,12vw,218px) 0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  position:relative!important;
  z-index:2!important;
}
.portrait-card img{
  height:610px!important;
  width:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  border-radius:0!important;
  border:0!important;
  background:transparent!important;
  filter:drop-shadow(0 28px 38px rgba(44,33,28,.12));
}
.circle-badge{
  display:none!important;
}
.decor-gradient{
  right:17%!important;
  top:72px!important;
  width:620px!important;
  height:520px!important;
  opacity:.36!important;
  filter:blur(22px)!important;
}
.hero-script-words{
  position:absolute;
  right:clamp(38px,6.3vw,112px);
  top:156px;
  z-index:3;
  display:flex;
  flex-direction:column;
  gap:6px;
  transform:rotate(-5deg);
  pointer-events:none;
}
.hero-script-words span{
  font-family:"Brush Script MT","Segoe Script","Comic Sans MS",cursive;
  font-size:clamp(30px,3vw,55px);
  line-height:.92;
  font-weight:400;
  letter-spacing:-.02em;
  color:#875cff;
  text-shadow:0 10px 24px rgba(135,92,255,.12);
}
.hero-script-words span:nth-child(2){
  color:#f1458d;
  margin-left:38px;
}
.hero-script-words span:nth-child(3){
  color:#a985ff;
  margin-left:72px;
}
@media(max-width:980px){
  .hero-shell{
    grid-template-columns:1fr!important;
    padding:54px 28px 42px!important;
    min-height:auto!important;
  }
  .portrait-wrap{
    min-height:520px!important;
  }
  .portrait-card{
    width:min(430px,88vw)!important;
    margin:0 auto!important;
  }
  .portrait-card img{
    height:500px!important;
  }
  .portrait-wrap::before{
    right:50%;
    transform:translateX(50%);
    width:480px;
    height:480px;
  }
  .hero-script-words{
    right:8%;
    top:48px;
  }
}
@media(max-width:640px){
  .hero h1{font-size:54px!important}
  .hero h2{font-size:24px!important}
  .proof-list{grid-template-columns:1fr!important}
  .hero-actions{flex-direction:column;align-items:stretch!important}
  .portrait-wrap{min-height:420px!important}
  .portrait-card img{height:420px!important}
  .hero-script-words span{font-size:30px}
}


/* Balanced hero with navy business portrait */
.hero-shell{
  grid-template-columns:minmax(520px, 1.04fr) minmax(430px, .96fr)!important;
  gap:28px!important;
  min-height:685px!important;
  padding:66px clamp(44px,5.3vw,96px) 44px!important;
}
.hero-copy{
  max-width:615px!important;
  padding-right:10px!important;
}
.hero h1{
  font-size:clamp(62px,6.2vw,94px)!important;
  line-height:.92!important;
  margin-bottom:14px!important;
}
.hero h2{
  font-size:clamp(24px,2.25vw,34px)!important;
  margin-bottom:18px!important;
}
.hero p{
  max-width:555px!important;
  font-size:17px!important;
  line-height:1.6!important;
}
.proof-list{
  gap:10px 22px!important;
  margin:24px 0 28px!important;
}
.hero-actions{
  margin-top:2px!important;
}
.portrait-wrap{
  min-height:565px!important;
}
.portrait-wrap::before{
  width:min(540px,43vw)!important;
  height:min(540px,43vw)!important;
  right:clamp(54px,7vw,126px)!important;
  top:48px!important;
}
.portrait-wrap::after{
  width:min(650px,52vw)!important;
  height:min(650px,52vw)!important;
  right:clamp(-115px,-4vw,-44px)!important;
  top:10px!important;
  opacity:.26!important;
}
.portrait-card{
  width:min(490px,39vw)!important;
  margin:0 clamp(84px,9.5vw,170px) 0 auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.portrait-card img{
  height:585px!important;
  width:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  background:transparent!important;
  filter:drop-shadow(0 22px 34px rgba(25,34,70,.18))!important;
}
.hero-script-words{
  right:clamp(16px,3.6vw,68px)!important;
  top:164px!important;
}
.hero-script-words span{
  font-size:clamp(28px,2.55vw,46px)!important;
}
@media(max-width:980px){
  .hero-shell{
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:48px 24px 38px!important;
    min-height:auto!important;
  }
  .hero-copy{
    max-width:none!important;
  }
  .portrait-wrap{
    min-height:500px!important;
  }
  .portrait-card{
    width:min(420px,86vw)!important;
    margin:0 auto!important;
  }
  .portrait-card img{
    height:480px!important;
  }
  .hero-script-words{
    right:8%!important;
    top:52px!important;
  }
}


/* Final hero rebalance */
.hero-shell{
  grid-template-columns:minmax(540px, 1.06fr) minmax(420px, .94fr)!important;
  gap:34px!important;
  min-height:690px!important;
  padding:64px clamp(42px,5vw,92px) 42px!important;
}
.hero-copy{
  max-width:600px!important;
  padding-right:6px!important;
}
.hero h1{
  font-size:clamp(60px,6vw,90px)!important;
  line-height:.92!important;
  margin-bottom:14px!important;
}
.hero h2{
  font-size:clamp(24px,2.15vw,32px)!important;
  margin-bottom:18px!important;
}
.hero p{
  max-width:540px!important;
  font-size:16.5px!important;
  line-height:1.58!important;
}
.proof-list{
  gap:10px 18px!important;
  margin:22px 0 26px!important;
}
.hero-actions{
  gap:14px!important;
}
.portrait-wrap{
  min-height:560px!important;
}
.portrait-wrap::before{
  width:min(520px,42vw)!important;
  height:min(520px,42vw)!important;
  right:clamp(58px,7vw,128px)!important;
  top:48px!important;
}
.portrait-wrap::after{
  width:min(630px,50vw)!important;
  height:min(630px,50vw)!important;
  right:clamp(-105px,-4vw,-40px)!important;
  top:12px!important;
  opacity:.24!important;
}
.portrait-card{
  width:min(470px,38vw)!important;
  margin:0 clamp(82px,9vw,160px) 0 auto!important;
}
.portrait-card img{
  height:565px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  filter:drop-shadow(0 22px 30px rgba(24,34,70,.18))!important;
}
.hero-script-words{
  right:clamp(12px,3.2vw,60px)!important;
  top:168px!important;
}
.hero-script-words span{
  font-size:clamp(27px,2.45vw,44px)!important;
}
@media(max-width:980px){
  .hero-shell{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:48px 24px 36px!important;
    min-height:auto!important;
  }
  .hero-copy{
    max-width:none!important;
  }
  .portrait-wrap{
    min-height:490px!important;
  }
  .portrait-card{
    width:min(410px,84vw)!important;
    margin:0 auto!important;
  }
  .portrait-card img{
    height:470px!important;
  }
  .hero-script-words{
    right:8%!important;
    top:54px!important;
  }
}


/* Stats strip alignment: match main section width and spacing */
.hero .stats-strip{
  width:min(var(--container), calc(100% - 48px))!important;
  margin:28px auto 28px!important;
  box-sizing:border-box!important;
}
.hero + main.container{
  margin-top:0!important;
}
@media(max-width:760px){
  .hero .stats-strip{
    width:calc(100% - 32px)!important;
    margin:22px auto 24px!important;
    grid-template-columns:repeat(2,1fr)!important;
  }
}


/* Hero polish: move handwritten words right, avoid overlap, align banner bottom with portrait body */
.hero-shell{
  min-height:700px!important;
  padding-bottom:0!important;
  overflow:hidden!important;
}
.portrait-wrap{
  min-height:610px!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
}
.portrait-card{
  width:min(455px,37vw)!important;
  margin:0 clamp(115px,12vw,220px) 0 auto!important;
  align-self:flex-end!important;
}
.portrait-card img{
  height:610px!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center bottom!important;
}
.portrait-wrap::before{
  right:clamp(120px,12vw,230px)!important;
  top:60px!important;
  width:min(520px,41vw)!important;
  height:min(520px,41vw)!important;
}
.portrait-wrap::after{
  right:clamp(-80px,-2vw,-28px)!important;
  top:24px!important;
  width:min(610px,49vw)!important;
  height:min(610px,49vw)!important;
}
.hero-script-words{
  right:clamp(26px,3vw,58px)!important;
  top:150px!important;
  transform:rotate(-5deg)!important;
}
.hero-script-words span{
  font-size:clamp(26px,2.35vw,42px)!important;
}
.hero-script-words span:nth-child(2){
  margin-left:34px!important;
}
.hero-script-words span:nth-child(3){
  margin-left:68px!important;
}
@media(max-width:980px){
  .hero-shell{
    padding-bottom:0!important;
  }
  .portrait-wrap{
    min-height:500px!important;
    justify-content:center!important;
  }
  .portrait-card{
    margin:0 auto!important;
    width:min(410px,84vw)!important;
  }
  .portrait-card img{
    height:500px!important;
  }
  .hero-script-words{
    right:5%!important;
    top:46px!important;
  }
}
@media(max-width:640px){
  .portrait-wrap{
    min-height:420px!important;
  }
  .portrait-card img{
    height:420px!important;
  }
  .hero-script-words{
    right:6%!important;
    top:38px!important;
  }
}


/* Further hero correction based on visual review */
.hero-shell{
  min-height:640px!important;
  padding:64px clamp(42px,5vw,92px) 0!important;
  align-items:end!important;
  overflow:hidden!important;
}
.hero-copy{
  align-self:center!important;
  padding-bottom:56px!important;
  max-width:590px!important;
}
.portrait-wrap{
  min-height:640px!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
  padding-bottom:0!important;
}
.portrait-card{
  width:min(440px,35vw)!important;
  margin:0 clamp(120px,12vw,210px) 0 auto!important;
  align-self:flex-end!important;
}
.portrait-card img{
  height:640px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  display:block!important;
}
.portrait-wrap::before{
  right:clamp(135px,13vw,240px)!important;
  top:88px!important;
  width:min(500px,40vw)!important;
  height:min(500px,40vw)!important;
}
.portrait-wrap::after{
  right:clamp(-55px,-1vw,10px)!important;
  top:38px!important;
  width:min(580px,46vw)!important;
  height:min(580px,46vw)!important;
  opacity:.22!important;
}
.hero-script-words{
  right:clamp(-18px,0vw,8px)!important;
  top:142px!important;
  z-index:4!important;
}
.hero-script-words span{
  font-size:clamp(26px,2.25vw,40px)!important;
}
.hero-script-words span:nth-child(2){
  margin-left:30px!important;
}
.hero-script-words span:nth-child(3){
  margin-left:60px!important;
}
@media(max-width:1200px){
  .hero-script-words{
    right:clamp(4px,1.2vw,20px)!important;
  }
}
@media(max-width:980px){
  .hero-shell{
    min-height:auto!important;
    padding:48px 24px 0!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .hero-copy{
    padding-bottom:20px!important;
    max-width:none!important;
  }
  .portrait-wrap{
    min-height:500px!important;
    justify-content:center!important;
  }
  .portrait-card{
    width:min(410px,84vw)!important;
    margin:0 auto!important;
  }
  .portrait-card img{
    height:500px!important;
  }
  .hero-script-words{
    right:6%!important;
    top:58px!important;
  }
}
@media(max-width:640px){
  .hero-shell{
    padding-top:42px!important;
  }
  .hero-copy{
    padding-bottom:16px!important;
  }
  .portrait-wrap{
    min-height:420px!important;
  }
  .portrait-card img{
    height:420px!important;
  }
  .hero-script-words{
    right:5%!important;
    top:42px!important;
  }
}


/* Final hero layout: match approved composition, keep existing HTML color style */
.hero-shell{
  grid-template-columns:minmax(500px, 1fr) minmax(460px, 1fr)!important;
  gap:38px!important;
  min-height:655px!important;
  padding:58px clamp(42px,5vw,92px) 0!important;
  align-items:end!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 78% 26%, rgba(232,91,70,.08), transparent 30%),
    radial-gradient(circle at 88% 72%, rgba(135,92,255,.10), transparent 28%),
    radial-gradient(circle at 10% 85%, rgba(255,105,180,.06), transparent 32%),
    linear-gradient(135deg,#fffaf7 0%,#fffefd 48%,#f4fff8 100%)!important;
}
.hero-copy{
  max-width:575px!important;
  padding-bottom:62px!important;
  align-self:center!important;
}
.hero h1{
  font-size:clamp(58px,5.8vw,86px)!important;
  line-height:.93!important;
  margin-bottom:14px!important;
}
.hero h2{
  font-size:clamp(24px,2.05vw,31px)!important;
  margin-bottom:18px!important;
}
.hero p{
  max-width:530px!important;
  font-size:16.5px!important;
  line-height:1.58!important;
}
.proof-list{
  gap:10px 18px!important;
  margin:22px 0 26px!important;
}
.hero-actions{
  gap:14px!important;
}
.portrait-wrap{
  position:relative!important;
  min-height:655px!important;
  align-items:flex-end!important;
  justify-content:center!important;
  padding-bottom:0!important;
}
.portrait-wrap::before{
  /* main soft circle behind the subject */
  content:"";
  position:absolute;
  width:min(610px,48vw)!important;
  height:min(610px,48vw)!important;
  left:52%!important;
  top:54px!important;
  transform:translateX(-50%)!important;
  border-radius:999px!important;
  background:
    radial-gradient(circle at 36% 32%, rgba(255,255,255,.92), rgba(255,222,228,.76) 40%, rgba(180,144,255,.28) 74%, rgba(255,255,255,0) 100%)!important;
  z-index:0!important;
}
.portrait-wrap::after{
  /* subtle fine-line texture on the right side, like the approved reference */
  content:"";
  position:absolute;
  right:-70px!important;
  bottom:-10px!important;
  width:min(430px,34vw)!important;
  height:min(430px,34vw)!important;
  border-radius:999px!important;
  background:repeating-radial-gradient(circle, rgba(139,107,98,.06) 0 1px, transparent 1px 7px)!important;
  opacity:.26!important;
  z-index:0!important;
  pointer-events:none!important;
}
.portrait-card{
  width:min(455px,36vw)!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  position:relative!important;
  z-index:2!important;
  transform:translateX(-34px)!important;
}
.portrait-card img{
  height:655px!important;
  width:100%!important;
  display:block!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  background:transparent!important;
  filter:drop-shadow(0 24px 30px rgba(24,34,70,.16))!important;
}
.circle-badge{
  display:none!important;
}
.hero-script-words{
  position:absolute!important;
  right:18px!important;
  top:142px!important;
  z-index:3!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  transform:rotate(-4deg)!important;
  pointer-events:none!important;
}
.hero-script-words span{
  font-family:"Brush Script MT","Segoe Script","Comic Sans MS",cursive!important;
  font-size:clamp(32px,2.8vw,48px)!important;
  line-height:.92!important;
  font-weight:400!important;
  letter-spacing:-.02em!important;
  text-shadow:0 8px 20px rgba(135,92,255,.10)!important;
}
.hero-script-words span:nth-child(1){
  color:#9e7bff!important;
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  color:#f55a9d!important;
  margin-left:26px!important;
}
.hero-script-words span:nth-child(3){
  color:#b194ff!important;
  margin-left:60px!important;
}
.decor-gradient{
  right:9%!important;
  top:66px!important;
  width:560px!important;
  height:460px!important;
  opacity:.24!important;
  filter:blur(20px)!important;
}
@media(max-width:1100px){
  .hero-shell{
    grid-template-columns:minmax(440px,1fr) minmax(380px,1fr)!important;
    gap:24px!important;
  }
  .hero-copy{
    max-width:540px!important;
  }
  .portrait-card{
    transform:translateX(-16px)!important;
  }
  .hero-script-words{
    right:2px!important;
    top:148px!important;
  }
}
@media(max-width:980px){
  .hero-shell{
    grid-template-columns:1fr!important;
    gap:8px!important;
    min-height:auto!important;
    padding:48px 24px 0!important;
  }
  .hero-copy{
    max-width:none!important;
    padding-bottom:18px!important;
  }
  .portrait-wrap{
    min-height:505px!important;
    justify-content:center!important;
  }
  .portrait-wrap::before{
    width:490px!important;
    height:490px!important;
    left:50%!important;
    top:34px!important;
  }
  .portrait-wrap::after{
    right:-34px!important;
    width:360px!important;
    height:360px!important;
  }
  .portrait-card{
    width:min(410px,84vw)!important;
    transform:none!important;
  }
  .portrait-card img{
    height:500px!important;
  }
  .hero-script-words{
    right:6%!important;
    top:56px!important;
  }
  .hero-script-words span{
    font-size:34px!important;
  }
}
@media(max-width:640px){
  .hero-shell{
    padding-top:40px!important;
  }
  .portrait-wrap{
    min-height:425px!important;
  }
  .portrait-card img{
    height:420px!important;
  }
  .hero-script-words{
    right:4%!important;
    top:40px!important;
  }
  .hero-script-words span{
    font-size:30px!important;
  }
}


/* Move Strategy / Creativity / Impact closer to the right edge of the circle */
.hero-script-words{
  right:-34px!important;
  top:146px!important;
}
.hero-script-words span{
  font-size:clamp(31px,2.75vw,47px)!important;
}
.hero-script-words span:nth-child(1){
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  margin-left:22px!important;
}
.hero-script-words span:nth-child(3){
  margin-left:54px!important;
}
@media(max-width:1100px){
  .hero-script-words{
    right:-14px!important;
    top:148px!important;
  }
}
@media(max-width:980px){
  .hero-script-words{
    right:6%!important;
    top:56px!important;
  }
}
@media(max-width:640px){
  .hero-script-words{
    right:4%!important;
    top:40px!important;
  }
}


/* Move handwritten words further right:
   about half of the lettering sits inside the circle, half outside */
.hero-script-words{
  right:-78px!important;
  top:146px!important;
}
.hero-script-words span{
  font-size:clamp(31px,2.75vw,47px)!important;
}
.hero-script-words span:nth-child(1){
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  margin-left:20px!important;
}
.hero-script-words span:nth-child(3){
  margin-left:50px!important;
}
@media(max-width:1100px){
  .hero-script-words{
    right:-42px!important;
    top:148px!important;
  }
}
@media(max-width:980px){
  .hero-script-words{
    right:6%!important;
    top:56px!important;
  }
}
@media(max-width:640px){
  .hero-script-words{
    right:4%!important;
    top:40px!important;
  }
}


/* Hero refinement: move script text farther right and reduce top whitespace */
.hero-shell{
  min-height:620px!important;
  padding-top:34px!important;
  padding-bottom:0!important;
}
.hero-copy{
  padding-bottom:42px!important;
}
.portrait-wrap{
  min-height:620px!important;
}
.portrait-wrap::before{
  top:42px!important;
}
.portrait-wrap::after{
  top:18px!important;
}
.portrait-card img{
  height:620px!important;
}

.hero-script-words{
  right:-140px!important;
  top:128px!important;
}
.hero-script-words span{
  font-size:clamp(30px,2.7vw,46px)!important;
}
.hero-script-words span:nth-child(1){
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  margin-left:16px!important;
}
.hero-script-words span:nth-child(3){
  margin-left:42px!important;
}

@media(max-width:1200px){
  .hero-script-words{
    right:-92px!important;
    top:132px!important;
  }
}
@media(max-width:1100px){
  .hero-script-words{
    right:-72px!important;
    top:136px!important;
  }
}
@media(max-width:980px){
  .hero-shell{
    min-height:auto!important;
    padding-top:28px!important;
  }
  .hero-copy{
    padding-bottom:18px!important;
  }
  .portrait-wrap{
    min-height:500px!important;
  }
  .portrait-card img{
    height:500px!important;
  }
  .hero-script-words{
    right:2%!important;
    top:52px!important;
  }
}
@media(max-width:640px){
  .hero-shell{
    padding-top:20px!important;
  }
  .portrait-wrap{
    min-height:420px!important;
  }
  .portrait-card img{
    height:420px!important;
  }
  .hero-script-words{
    right:1%!important;
    top:36px!important;
  }
}


/* Refined stats strip background */
.hero .stats-strip{
  background:
    radial-gradient(circle at 8% 18%, rgba(232,91,70,.12), transparent 28%),
    radial-gradient(circle at 92% 10%, rgba(135,92,255,.12), transparent 26%),
    linear-gradient(135deg, rgba(255,255,255,.92) 0%, rgba(255,247,244,.96) 48%, rgba(246,255,250,.92) 100%)!important;
  border:1px solid rgba(234,222,216,.9)!important;
  box-shadow:0 18px 48px rgba(44,33,28,.07)!important;
  backdrop-filter:blur(10px)!important;
}
.hero .stat{
  background:rgba(255,255,255,.72)!important;
  border-color:rgba(234,222,216,.72)!important;
  box-shadow:0 8px 24px rgba(44,33,28,.035)!important;
}
.hero .stat strong{
  color:#151313!important;
}
.hero .stat span{
  color:#6f625e!important;
}


/* Testimonial user info update */
.testimonial-author img{
  width:104px!important;
  height:104px!important;
  object-fit:cover!important;
  object-position:center top!important;
  border-radius:999px!important;
  display:block!important;
}
.testimonial-author p{
  line-height:1.55!important;
}


/* Requested hover adjustment */
.category-card-refined:hover{
  transform:translateY(-4px)!important;
}


/* Hero background refined + more breathing room for Strategy / Creativity / Impact */
.hero-shell{
  background:
    radial-gradient(circle at 14% 16%, rgba(255,255,255,.92) 0%, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 74% 18%, rgba(255,214,226,.38) 0%, rgba(255,214,226,0) 26%),
    radial-gradient(circle at 86% 72%, rgba(192,170,255,.28) 0%, rgba(192,170,255,0) 28%),
    radial-gradient(circle at 10% 90%, rgba(255,184,214,.14) 0%, rgba(255,184,214,0) 26%),
    linear-gradient(115deg, #fcfbfb 0%, #fff8f5 48%, #fbfffc 100%)!important;
  position:relative!important;
}
.hero-shell::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.06) 0, rgba(255,255,255,0) 16%),
    radial-gradient(circle at 78% 22%, rgba(255,255,255,.28), rgba(255,255,255,0) 42%);
  opacity:.85!important;
}
.hero-script-words{
  gap:14px!important;
}
.hero-script-words span{
  letter-spacing:-.01em!important;
}
.hero-script-words span:nth-child(1){
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  margin-left:28px!important;
}
.hero-script-words span:nth-child(3){
  margin-left:62px!important;
}
@media(max-width:980px){
  .hero-script-words{
    gap:10px!important;
  }
}


/* Make Strategy / Creativity / Impact lettering thinner and more elegant */
.hero-script-words span{
  font-family:"Segoe Script","Brush Script MT","Snell Roundhand","Comic Sans MS",cursive!important;
  font-weight:300!important;
  opacity:.86!important;
  text-shadow:0 6px 16px rgba(135,92,255,.08)!important;
}

/* Dark premium stat blocks with white text */
.hero .stats-strip{
  background:
    radial-gradient(circle at 8% 18%, rgba(232,91,70,.10), transparent 28%),
    radial-gradient(circle at 92% 10%, rgba(135,92,255,.10), transparent 26%),
    linear-gradient(135deg, rgba(255,255,255,.92) 0%, rgba(255,247,244,.96) 48%, rgba(246,255,250,.92) 100%)!important;
}
.hero .stat{
  background:linear-gradient(135deg,#1a1830 0%,#2e2a59 58%,#6f55d9 100%)!important;
  border-color:rgba(255,255,255,.20)!important;
  box-shadow:0 14px 30px rgba(38,32,82,.18)!important;
}
.hero .stat strong{
  color:#fff!important;
}
.hero .stat span{
  color:rgba(255,255,255,.78)!important;
}


/* Stat blocks: warm #d95b48 gradient */
.hero .stat{
  background:
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.26), transparent 26%),
    linear-gradient(135deg, #d95b48 0%, #c94d42 48%, #9f3d45 100%)!important;
  border-color:rgba(255,255,255,.22)!important;
  box-shadow:0 14px 30px rgba(217,91,72,.22)!important;
}
.hero .stat strong{
  color:#fff!important;
}
.hero .stat span{
  color:rgba(255,255,255,.82)!important;
}


/* Hero morphing shapes animation: replace static circle with organic animated blob */
.portrait-wrap::before{
  background:
    radial-gradient(circle at 32% 28%, rgba(255,255,255,.88), rgba(255,226,230,.72) 38%, rgba(185,156,255,.30) 72%, rgba(255,255,255,0) 100%)!important;
  border-radius:42% 58% 62% 38% / 44% 42% 58% 56%!important;
  animation:heroMorphBlob 10s ease-in-out infinite alternate!important;
  filter:blur(.2px)!important;
}
.portrait-wrap::after{
  border-radius:52% 48% 40% 60% / 52% 42% 58% 48%!important;
  animation:heroMorphTexture 12s ease-in-out infinite alternate!important;
}
@keyframes heroMorphBlob{
  0%{
    border-radius:42% 58% 62% 38% / 44% 42% 58% 56%;
    transform:translateX(-50%) rotate(0deg) scale(1);
  }
  35%{
    border-radius:58% 42% 48% 52% / 50% 62% 38% 50%;
    transform:translateX(-50%) rotate(4deg) scale(1.035);
  }
  70%{
    border-radius:46% 54% 38% 62% / 60% 42% 58% 40%;
    transform:translateX(-50%) rotate(-3deg) scale(.985);
  }
  100%{
    border-radius:61% 39% 56% 44% / 42% 57% 43% 58%;
    transform:translateX(-50%) rotate(2deg) scale(1.02);
  }
}
@keyframes heroMorphTexture{
  0%{
    border-radius:52% 48% 40% 60% / 52% 42% 58% 48%;
    transform:rotate(0deg) scale(1);
  }
  100%{
    border-radius:42% 58% 61% 39% / 45% 60% 40% 55%;
    transform:rotate(-6deg) scale(1.04);
  }
}
@media (prefers-reduced-motion: reduce){
  .portrait-wrap::before,
  .portrait-wrap::after{
    animation:none!important;
  }
}

/* Revert stat cards to clean white background and black text */
.hero .stat{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(234,222,216,.85)!important;
  box-shadow:0 8px 24px rgba(44,33,28,.035)!important;
}
.hero .stat strong{
  color:#151313!important;
}
.hero .stat span{
  color:#605955!important;
}


/* Make Strategy / Creativity / Impact as thin and airy as possible */
.hero-script-words span{
  font-family:"Snell Roundhand","Apple Chancery","Segoe Script","Brush Script MT",cursive!important;
  font-weight:200!important;
  opacity:.68!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  filter:none!important;
}
.hero-script-words span:nth-child(1){
  color:rgba(135,92,255,.72)!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(245,90,157,.74)!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(177,148,255,.72)!important;
}

/* Stronger visible Morphing Shapes Animation for the hero blob */
.portrait-wrap::before{
  border-radius:34% 66% 58% 42% / 45% 38% 62% 55%!important;
  background:
    radial-gradient(circle at 28% 26%, rgba(255,255,255,.88), rgba(255,225,231,.74) 36%, rgba(184,150,255,.34) 70%, rgba(255,255,255,0) 100%)!important;
  animation:heroMorphBlobVisible 6.5s ease-in-out infinite alternate!important;
  transform-origin:center center!important;
  will-change:border-radius, transform, background!important;
}
.portrait-wrap::after{
  animation:heroMorphTextureVisible 8s ease-in-out infinite alternate!important;
  will-change:border-radius, transform, opacity!important;
}

@keyframes heroMorphBlobVisible{
  0%{
    border-radius:34% 66% 58% 42% / 45% 38% 62% 55%;
    transform:translateX(-50%) rotate(0deg) scale(1);
  }
  25%{
    border-radius:62% 38% 44% 56% / 50% 64% 36% 50%;
    transform:translateX(-50%) rotate(5deg) scale(1.045);
  }
  55%{
    border-radius:46% 54% 70% 30% / 64% 42% 58% 36%;
    transform:translateX(-50%) rotate(-4deg) scale(.985);
  }
  80%{
    border-radius:68% 32% 50% 50% / 40% 58% 42% 60%;
    transform:translateX(-50%) rotate(3deg) scale(1.025);
  }
  100%{
    border-radius:42% 58% 36% 64% / 56% 35% 65% 44%;
    transform:translateX(-50%) rotate(-2deg) scale(1.06);
  }
}
@keyframes heroMorphTextureVisible{
  0%{
    border-radius:52% 48% 40% 60% / 52% 42% 58% 48%;
    transform:rotate(0deg) scale(1);
    opacity:.22;
  }
  50%{
    border-radius:38% 62% 64% 36% / 44% 60% 40% 56%;
    transform:rotate(7deg) scale(1.04);
    opacity:.30;
  }
  100%{
    border-radius:65% 35% 44% 56% / 60% 39% 61% 40%;
    transform:rotate(-6deg) scale(.98);
    opacity:.24;
  }
}
@media (prefers-reduced-motion: reduce){
  .portrait-wrap::before,
  .portrait-wrap::after{
    animation:none!important;
  }
}


/* Match Strategy / Creativity / Impact lettering more closely to the provided reference */
.hero-script-words{
  gap:18px!important;
  transform:rotate(-3deg)!important;
}
.hero-script-words span{
  font-family:"SignPainter","Snell Roundhand","Apple Chancery","Segoe Script","Lucida Handwriting","Brush Script MT",cursive!important;
  font-weight:100!important;
  font-style:normal!important;
  letter-spacing:.01em!important;
  line-height:.9!important;
  opacity:.78!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
}
.hero-script-words span:nth-child(1){
  color:rgba(135,92,255,.72)!important;
  font-size:clamp(32px,2.8vw,50px)!important;
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(245,90,157,.76)!important;
  font-size:clamp(31px,2.75vw,49px)!important;
  margin-left:22px!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(177,148,255,.74)!important;
  font-size:clamp(31px,2.7vw,48px)!important;
  margin-left:56px!important;
}


/* Circle badge removed from hero */
.circle-badge{
  display:none!important;
}


/* Final font correction for Strategy / Creativity / Impact
   Closest web-safe/web-font match to the provided thin handwritten reference */
.hero-script-words{
  gap:18px!important;
  transform:rotate(-4deg)!important;
}
.hero-script-words span{
  font-family:"Allura","Snell Roundhand","Apple Chancery","Segoe Script",cursive!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:.005em!important;
  line-height:.82!important;
  opacity:.82!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  filter:none!important;
}
.hero-script-words span:nth-child(1){
  color:rgba(135,92,255,.78)!important;
  font-size:clamp(42px,3.7vw,68px)!important;
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(245,90,157,.80)!important;
  font-size:clamp(40px,3.45vw,64px)!important;
  margin-left:32px!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(177,148,255,.76)!important;
  font-size:clamp(40px,3.45vw,64px)!important;
  margin-left:72px!important;
}


/* Try Hall Of Fun Clean for Strategy / Creativity / Impact */
.hero-script-words span{
  font-family:"Hall Of Fun Clean","Hall Of Fun","Allura","Snell Roundhand","Apple Chancery","Segoe Script",cursive!important;
  font-weight:400!important;
  letter-spacing:.005em!important;
  line-height:.86!important;
  opacity:.84!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
}
.hero-script-words span:nth-child(1){
  font-size:clamp(40px,3.55vw,66px)!important;
  color:rgba(135,92,255,.78)!important;
}
.hero-script-words span:nth-child(2){
  font-size:clamp(39px,3.35vw,62px)!important;
  color:rgba(245,90,157,.80)!important;
  margin-left:30px!important;
}
.hero-script-words span:nth-child(3){
  font-size:clamp(39px,3.35vw,62px)!important;
  color:rgba(177,148,255,.76)!important;
  margin-left:68px!important;
}


/* Add icons to What I do best cards */
.skill-cards-iconic .skill-card-iconic{
  position:relative;
  overflow:hidden;
  padding-top:24px!important;
}
.skill-card-iconic .skill-icon{
  width:42px;
  height:42px;
  border-radius:15px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
  font-size:22px;
  line-height:1;
  font-weight:800;
  color:var(--accent);
  background:
    radial-gradient(circle at 30% 25%, rgba(255,255,255,.85), rgba(255,255,255,0) 45%),
    linear-gradient(135deg, rgba(232,91,70,.13), rgba(135,92,255,.12));
  border:1px solid rgba(234,222,216,.88);
  box-shadow:0 10px 24px rgba(44,33,28,.055);
}
.skill-card-iconic h3{
  margin-top:0!important;
}
.skill-card-iconic::after{
  content:"";
  position:absolute;
  right:-34px;
  top:-34px;
  width:92px;
  height:92px;
  border-radius:999px;
  background:rgba(232,91,70,.055);
  pointer-events:none;
}
.skill-card-iconic:hover .skill-icon{
  transform:translateY(-2px);
  background:linear-gradient(135deg, rgba(232,91,70,.20), rgba(135,92,255,.16));
}
.skill-card-iconic .skill-icon{
  transition:transform .22s ease, background .22s ease;
}


/* Refined icons for What I do best cards */
.skill-card-iconic::after{
  content:none!important;
  display:none!important;
}
.skill-card-iconic .skill-icon{
  color:var(--accent)!important;
}
.skill-card-iconic .skill-icon svg{
  width:23px;
  height:23px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.skill-card-iconic:nth-child(1) .skill-icon{color:#d95b48!important}
.skill-card-iconic:nth-child(2) .skill-icon{color:#875cff!important}
.skill-card-iconic:nth-child(3) .skill-icon{color:#d95b48!important}
.skill-card-iconic:nth-child(4) .skill-icon{color:#f55a9d!important}
.skill-card-iconic:nth-child(5) .skill-icon{color:#6c5ce7!important}
.skill-card-iconic:nth-child(6) .skill-icon{color:#d95b48!important}


/* Closer handwritten reference font for Strategy / Creativity / Impact */
.hero-script-words{
  gap:18px!important;
  transform:rotate(-4deg)!important;
}
.hero-script-words span{
  font-family:"Qwigley","Allura","Sacramento","Snell Roundhand","Apple Chancery","Segoe Script",cursive!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:.01em!important;
  line-height:.78!important;
  opacity:.82!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  filter:none!important;
}
.hero-script-words span:nth-child(1){
  color:rgba(135,92,255,.76)!important;
  font-size:clamp(54px,4.6vw,86px)!important;
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(245,90,157,.80)!important;
  font-size:clamp(52px,4.35vw,82px)!important;
  margin-left:26px!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(177,148,255,.76)!important;
  font-size:clamp(52px,4.35vw,82px)!important;
  margin-left:66px!important;
}


/* Revert Strategy / Creativity / Impact back to Sacramento */
.hero-script-words{
  gap:20px!important;
  transform:rotate(-4deg)!important;
}
.hero-script-words span{
  font-family:"Sacramento","Allura","Snell Roundhand","Apple Chancery","Segoe Script",cursive!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:.015em!important;
  line-height:.78!important;
  opacity:.82!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  filter:none!important;
}
.hero-script-words span:nth-child(1){
  color:rgba(135,92,255,.76)!important;
  font-size:clamp(45px,3.95vw,72px)!important;
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(245,90,157,.80)!important;
  font-size:clamp(43px,3.75vw,68px)!important;
  margin-left:34px!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(177,148,255,.76)!important;
  font-size:clamp(43px,3.75vw,68px)!important;
  margin-left:76px!important;
}


/* Try Monsieur La Doulaise for Strategy / Creativity / Impact */
.hero-script-words{
  gap:18px!important;
  transform:rotate(-4deg)!important;
}
.hero-script-words span{
  font-family:"Monsieur La Doulaise","Sacramento","Allura","Snell Roundhand","Apple Chancery","Segoe Script",cursive!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:.01em!important;
  line-height:.76!important;
  opacity:.88!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  filter:none!important;
}
.hero-script-words span:nth-child(1){
  color:rgba(135,92,255,.78)!important;
  font-size:clamp(52px,4.5vw,84px)!important;
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(245,90,157,.82)!important;
  font-size:clamp(50px,4.3vw,80px)!important;
  margin-left:26px!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(177,148,255,.78)!important;
  font-size:clamp(50px,4.3vw,80px)!important;
  margin-left:64px!important;
}


/* Pastel card-style backgrounds for .stat blocks, inspired by the reference */
.hero .stats-strip{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  gap:14px!important;
}

.hero .stat{
  position:relative!important;
  overflow:hidden!important;
  min-height:118px!important;
  padding:18px 18px 16px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  box-shadow:
    0 14px 30px rgba(66, 56, 44, .08),
    inset 0 1px 0 rgba(255,255,255,.38)!important;
  color:#141212!important;
}

.hero .stat strong{
  color:#141212!important;
}

.hero .stat span{
  color:#5e5752!important;
}

.hero .stat::before{
  content:"";
  position:absolute;
  right:-18px;
  bottom:-18px;
  width:74px;
  height:74px;
  border-radius:999px;
  background:rgba(0,0,0,.04);
  opacity:.45;
  pointer-events:none;
}

.hero .stat:nth-child(3n+1){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.52), rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #dff4dd 0%, #d4efcf 100%)!important;
  border-color:rgba(188, 220, 187, .92)!important;
}
.hero .stat:nth-child(3n+1)::before{
  background:rgba(152, 191, 146, .18);
}

.hero .stat:nth-child(3n+2){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.52), rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #ffe37d 0%, #f7c93e 100%)!important;
  border-color:rgba(234, 198, 98, .95)!important;
}
.hero .stat:nth-child(3n+2)::before{
  background:rgba(201, 145, 20, .12);
}

.hero .stat:nth-child(3n){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.56), rgba(255,255,255,0) 34%),
    linear-gradient(135deg, #ece1ff 0%, #ddd0f7 100%)!important;
  border-color:rgba(210, 193, 237, .95)!important;
}
.hero .stat:nth-child(3n)::before{
  background:rgba(157, 123, 210, .12);
}

@media(max-width:760px){
  .hero .stats-strip{
    gap:12px!important;
  }
  .hero .stat{
    min-height:102px!important;
    border-radius:18px!important;
  }
}


/* Refine stats: 6 different pastel colors, compact height, same width as other sections */
.hero .stats-strip{
  width:min(var(--container), calc(100% - 48px))!important;
  margin:28px auto 28px!important;
  display:grid!important;
  grid-template-columns:repeat(6, minmax(0, 1fr))!important;
  gap:14px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  box-sizing:border-box!important;
}

.hero .stat{
  min-height:86px!important;
  padding:16px 16px 14px!important;
  border-radius:20px!important;
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.48)!important;
  box-shadow:
    0 12px 26px rgba(66,56,44,.07),
    inset 0 1px 0 rgba(255,255,255,.42)!important;
}

.hero .stat strong{
  font-size:25px!important;
  line-height:1!important;
  color:#141212!important;
}

.hero .stat span{
  display:block!important;
  margin-top:6px!important;
  font-size:11.5px!important;
  line-height:1.25!important;
  color:#5e5752!important;
}

.hero .stat::before{
  content:"";
  position:absolute;
  right:-22px;
  top:10px;
  width:58px;
  height:58px;
  border-radius:999px;
  opacity:.52;
  pointer-events:none;
}

/* 01 - green like reference */
.hero .stat:nth-child(1){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.58), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#e2f6df 0%,#cfeec8 100%)!important;
  border-color:rgba(188,220,187,.95)!important;
}
.hero .stat:nth-child(1)::before{background:rgba(132,184,135,.16);}

/* 02 - yellow like reference */
.hero .stat:nth-child(2){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.48), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#ffe680 0%,#f7c83b 100%)!important;
  border-color:rgba(234,198,98,.96)!important;
}
.hero .stat:nth-child(2)::before{background:rgba(201,145,20,.13);}

/* 03 - lavender like reference */
.hero .stat:nth-child(3){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.56), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#eee3ff 0%,#dcd0f7 100%)!important;
  border-color:rgba(210,193,237,.96)!important;
}
.hero .stat:nth-child(3)::before{background:rgba(157,123,210,.13);}

/* 04 - peach */
.hero .stat:nth-child(4){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.54), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#ffe2da 0%,#f8bfb1 100%)!important;
  border-color:rgba(238,190,178,.96)!important;
}
.hero .stat:nth-child(4)::before{background:rgba(217,91,72,.12);}

/* 05 - soft blue */
.hero .stat:nth-child(5){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.56), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#dff2ff 0%,#bedff5 100%)!important;
  border-color:rgba(185,217,235,.96)!important;
}
.hero .stat:nth-child(5)::before{background:rgba(91,154,207,.12);}

/* 06 - blush pink */
.hero .stat:nth-child(6){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.56), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#ffe4f1 0%,#f6c1da 100%)!important;
  border-color:rgba(236,194,215,.96)!important;
}
.hero .stat:nth-child(6)::before{background:rgba(245,90,157,.12);}

@media(max-width:980px){
  .hero .stats-strip{
    grid-template-columns:repeat(3, minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .hero .stats-strip{
    width:calc(100% - 32px)!important;
    grid-template-columns:repeat(2, minmax(0,1fr))!important;
    gap:12px!important;
  }
  .hero .stat{
    min-height:82px!important;
    border-radius:18px!important;
  }
}


/* Use Italianno for Strategy / Creativity / Impact */
.hero-script-words{
  gap:18px!important;
  transform:rotate(-4deg)!important;
}
.hero-script-words span{
  font-family:"Italianno","Monsieur La Doulaise","Sacramento","Allura","Snell Roundhand","Apple Chancery","Segoe Script",cursive!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:.01em!important;
  line-height:.76!important;
  opacity:.84!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  filter:none!important;
}
.hero-script-words span:nth-child(1){
  color:rgba(135,92,255,.78)!important;
  font-size:clamp(52px,4.45vw,84px)!important;
  margin-left:0!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(245,90,157,.82)!important;
  font-size:clamp(50px,4.25vw,80px)!important;
  margin-left:28px!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(177,148,255,.78)!important;
  font-size:clamp(50px,4.25vw,80px)!important;
  margin-left:66px!important;
}


/* Trusted by top brands: use uploaded color logos */
.trusted-brand-section-color .eyebrow{
  margin-bottom:18px!important;
}
.custom-color-logo-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:26px 28px!important;
  align-items:center!important;
}
.brand-logo-item{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:64px!important;
  padding:6px 8px!important;
}
.brand-logo-item img{
  max-width:100%!important;
  max-height:46px!important;
  width:auto!important;
  height:auto!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}
.brand-logo-tall img{
  max-height:58px!important;
}
.brand-logo-wide img{
  max-height:42px!important;
}
@media(max-width:980px){
  .custom-color-logo-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:22px 20px!important;
  }
}
@media(max-width:640px){
  .custom-color-logo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px 16px!important;
  }
  .brand-logo-item{
    min-height:54px!important;
    padding:4px 6px!important;
  }
  .brand-logo-item img{
    max-height:38px!important;
  }
  .brand-logo-tall img{
    max-height:48px!important;
  }
}


/* Refine .portrait-wrap::before with a more professional, trustworthy brand palette */
.portrait-wrap::before{
  background:
    radial-gradient(circle at 30% 24%, rgba(255,255,255,.90), rgba(255,255,255,0) 30%),
    radial-gradient(circle at 70% 76%, rgba(217,91,72,.10), rgba(217,91,72,0) 34%),
    linear-gradient(135deg,
      rgba(245,249,255,.94) 0%,
      rgba(222,232,249,.84) 36%,
      rgba(205,218,241,.78) 66%,
      rgba(238,243,249,.70) 100%
    )!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    0 28px 80px rgba(31,45,85,.08)!important;
}


/* Hero background and handwritten text adjusted to match the professional portrait blob palette */
.hero-shell{
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.92) 0%, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 72% 22%, rgba(222,232,249,.46) 0%, rgba(222,232,249,0) 31%),
    radial-gradient(circle at 88% 76%, rgba(205,218,241,.42) 0%, rgba(205,218,241,0) 30%),
    radial-gradient(circle at 8% 90%, rgba(217,91,72,.065) 0%, rgba(217,91,72,0) 28%),
    linear-gradient(115deg, #fbfcff 0%, #f6f9fd 45%, #f2f6f9 100%)!important;
}
.hero-shell::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,0) 28%),
    radial-gradient(circle at 76% 24%, rgba(255,255,255,.34), rgba(255,255,255,0) 44%);
  opacity:.78!important;
}
.decor-gradient{
  opacity:.16!important;
  filter:blur(24px)!important;
}
.hero-script-words span{
  opacity:.84!important;
  text-shadow:none!important;
}
.hero-script-words span:nth-child(1){
  color:rgba(54,78,126,.78)!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(217,91,72,.72)!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(94,111,146,.68)!important;
}


/* Header background aligned with hero palette */


/* Handwritten hero text colors harmonized */
.hero-script-words span:nth-child(1){
  color:rgba(60, 82, 124, .80)!important; /* Strategy */
}
.hero-script-words span:nth-child(2){
  color:rgba(166, 104, 86, .78)!important; /* Creativity: warmer muted clay, distinct but less loud */
}
.hero-script-words span:nth-child(3){
  color:rgba(103, 119, 152, .72)!important; /* Impact */
}


/* Stronger header background override — target actual nav/header classes */

body > nav::before,
nav::before{
  background:transparent!important;
}

/* Trusted by top brands: balanced same-height color logo grid */
.trusted-brand-section-color .eyebrow{
  margin-bottom:20px!important;
}
.balanced-brand-logo-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:18px 22px!important;
  align-items:center!important;
}
.balanced-logo-cell{
  height:72px!important;
  min-height:72px!important;
  padding:10px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(255,255,255,.62)!important;
  border:1px solid rgba(234,222,216,.70)!important;
  border-radius:18px!important;
  box-shadow:0 10px 24px rgba(44,33,28,.035)!important;
}
.balanced-logo-cell img{
  width:100%!important;
  height:42px!important;
  max-width:130px!important;
  max-height:42px!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  display:block!important;
}
@media(max-width:980px){
  .balanced-brand-logo-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}
@media(max-width:640px){
  .balanced-brand-logo-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
  .balanced-logo-cell{
    height:64px!important;
    min-height:64px!important;
  }
  .balanced-logo-cell img{
    height:36px!important;
    max-height:36px!important;
  }
}


/* Remove background color from stats strip */
.hero .stats-strip,
.stats-strip{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}


/* Increase separation between hero background and .portrait-wrap::before */
.hero-shell{
  background:
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.90) 0%, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 82% 22%, rgba(223,228,236,.38) 0%, rgba(223,228,236,0) 28%),
    radial-gradient(circle at 10% 90%, rgba(217,91,72,.05) 0%, rgba(217,91,72,0) 24%),
    linear-gradient(115deg, #fcfcfd 0%, #f6f7f9 48%, #eef1f4 100%)!important;
}

/* Cooler, more distinct professional blob behind portrait */
.portrait-wrap::before{
  background:
    radial-gradient(circle at 30% 24%, rgba(255,255,255,.92), rgba(255,255,255,0) 30%),
    radial-gradient(circle at 72% 74%, rgba(88, 114, 168, .16), rgba(88, 114, 168, 0) 34%),
    linear-gradient(135deg,
      rgba(231,238,248,.98) 0%,
      rgba(204,216,236,.92) 34%,
      rgba(181,198,226,.86) 68%,
      rgba(225,233,245,.82) 100%
    )!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.60),
    0 26px 72px rgba(48, 69, 110, .10)!important;
}

/* Keep handwritten words harmonious with the refined corporate palette */
.hero-script-words span:nth-child(1){
  color:rgba(67, 92, 138, .82)!important;
}
.hero-script-words span:nth-child(2){
  color:rgba(171, 110, 90, .80)!important;
}
.hero-script-words span:nth-child(3){
  color:rgba(103, 122, 160, .76)!important;
}


/* Stats strip separated from hero header */
.stats-section{
  width:min(100% - 48px, var(--container));
  margin:28px auto 36px;
  padding:0;
}

.stats-section .stats-strip{
  width:100%;
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:14px;
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  backdrop-filter:none;
  border-radius:0;
}

.stats-section .stat{
  min-height:86px;
  padding:16px 16px 14px;
  border-radius:20px;
}

@media(max-width:980px){
  .stats-section .stats-strip{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}

@media(max-width:760px){
  .stats-section{
    width:calc(100% - 32px);
    margin:22px auto 30px;
  }
  .stats-section .stats-strip{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px;
  }
  .stats-section .stat{
    min-height:82px;
    border-radius:18px;
  }
}


/* Repaired separate stats section */
.stats-section{
  width:min(100% - 48px, var(--container));
  margin:28px auto 36px;
  padding:0;
}

.stats-section .stats-strip{
  width:100%;
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:14px;
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  backdrop-filter:none;
  border-radius:0;
}

.stats-section .stat{
  position:relative;
  overflow:hidden;
  min-height:86px;
  padding:16px 16px 14px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.48);
  box-shadow:
    0 12px 26px rgba(66,56,44,.07),
    inset 0 1px 0 rgba(255,255,255,.42);
}

.stats-section .stat strong{
  display:block;
  font-size:25px;
  line-height:1;
  letter-spacing:-.04em;
  color:#141212;
}

.stats-section .stat span{
  display:block;
  margin-top:6px;
  font-size:11.5px;
  line-height:1.25;
  color:#5e5752;
  font-weight:650;
}

.stats-section .stat::before{
  content:"";
  position:absolute;
  right:-22px;
  top:10px;
  width:58px;
  height:58px;
  border-radius:999px;
  opacity:.52;
  pointer-events:none;
}

/* 01 - green */
.stats-section .stat:nth-child(1){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.58), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#e2f6df 0%,#cfeec8 100%);
  border-color:rgba(188,220,187,.95);
}
.stats-section .stat:nth-child(1)::before{background:rgba(132,184,135,.16);}

/* 02 - yellow */
.stats-section .stat:nth-child(2){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.48), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#ffe680 0%,#f7c83b 100%);
  border-color:rgba(234,198,98,.96);
}
.stats-section .stat:nth-child(2)::before{background:rgba(201,145,20,.13);}

/* 03 - lavender */
.stats-section .stat:nth-child(3){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.56), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#eee3ff 0%,#dcd0f7 100%);
  border-color:rgba(210,193,237,.96);
}
.stats-section .stat:nth-child(3)::before{background:rgba(157,123,210,.13);}

/* 04 - peach */
.stats-section .stat:nth-child(4){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.54), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#ffe2da 0%,#f8bfb1 100%);
  border-color:rgba(238,190,178,.96);
}
.stats-section .stat:nth-child(4)::before{background:rgba(217,91,72,.12);}

/* 05 - soft blue */
.stats-section .stat:nth-child(5){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.56), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#dff2ff 0%,#bedff5 100%);
  border-color:rgba(185,217,235,.96);
}
.stats-section .stat:nth-child(5)::before{background:rgba(91,154,207,.12);}

/* 06 - blush pink */
.stats-section .stat:nth-child(6){
  background:
    radial-gradient(circle at 18% 14%, rgba(255,255,255,.56), rgba(255,255,255,0) 34%),
    linear-gradient(135deg,#ffe4f1 0%,#f6c1da 100%);
  border-color:rgba(236,194,215,.96);
}
.stats-section .stat:nth-child(6)::before{background:rgba(245,90,157,.12);}

@media(max-width:980px){
  .stats-section .stats-strip{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}

@media(max-width:760px){
  .stats-section{
    width:calc(100% - 32px);
    margin:22px auto 30px;
  }
  .stats-section .stats-strip{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px;
  }
  .stats-section .stat{
    min-height:82px;
    border-radius:18px;
  }
}


/* Updated hero portrait with new cutout image */
.portrait-card img{
  object-fit:contain;
  object-position:center bottom;
  background:transparent;
}


/* Education & Certifications image size alignment */
.education-logo-section img,
.education-logo-right-section img,
.education-grid-heading-logos img,
section:has(.education-grid-heading-logos) img{
  width:58px;
  height:58px;
  min-width:58px;
  max-width:58px;
  min-height:58px;
  max-height:58px;
  object-fit:contain;
  object-position:center;
}

html, body { overflow-y: auto; }


/* Subpage header reset: remove homepage hero-colored header/nav background outside the front page */
body:not(.home):not(.front-page) header,
body:not(.home):not(.front-page) .lp-site-header,
body:not(.home):not(.front-page) .lp-header-editable,
body:not(.home):not(.front-page) .lp-nav,
body:not(.home):not(.front-page) body > nav,
body:not(.home):not(.front-page) nav {
  background: transparent !important;
  box-shadow: none !important;
}

body:not(.home):not(.front-page) header::before,
body:not(.home):not(.front-page) header::after,
body:not(.home):not(.front-page) .lp-site-header::before,
body:not(.home):not(.front-page) .lp-site-header::after,
body:not(.home):not(.front-page) .lp-nav::before,
body:not(.home):not(.front-page) .lp-nav::after,
body:not(.home):not(.front-page) nav::before,
body:not(.home):not(.front-page) nav::after {
  background: transparent !important;
  box-shadow: none !important;
}


/* Lan Project detail: exact section backgrounds from project-detail-figma-ready.html */
.lan-project-detail-page .section {
  border: 1px solid var(--line);
  border-radius: var(--radius-xl);
  padding: 38px;
  background: var(--white);
  box-shadow: var(--shadow);
}

.lan-project-detail-page .section + .section {
  margin-top: 28px;
}

.lan-project-detail-page .section.soft-peach {
  background: var(--peach);
}

.lan-project-detail-page .section.soft-mint {
  background: var(--mint);
}

.lan-project-detail-page .section.soft-lavender {
  background: var(--lavender);
}

.lan-project-detail-page .section.soft-blue {
  background: var(--blue);
}

.lan-project-detail-page .section.soft-cream {
  background: var(--cream);
}

.lan-project-detail-page .overview-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 22px;
}

.lan-project-detail-page .visual-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.lan-project-detail-page .visual-grid img {
  height: 190px;
  width: 100%;
  object-fit: cover;
  border-radius: 18px;
  border: 1px solid var(--line);
}

.lan-project-detail-page .role-list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lan-project-detail-page .role-list li {
  border-right: 1px solid var(--line);
  padding-right: 16px;
  font-size: 14px;
  color: var(--muted);
}

.lan-project-detail-page .role-list li:last-child {
  border-right: 0;
}

.lan-project-detail-page .related-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

@media (max-width: 1100px) {
  .lan-project-detail-page .overview-grid,
  .lan-project-detail-page .visual-grid,
  .lan-project-detail-page .role-list,
  .lan-project-detail-page .related-grid {
    grid-template-columns: 1fr;
  }

  .lan-project-detail-page .role-list li {
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding-bottom: 12px;
  }
}

@media (max-width: 640px) {
  .lan-project-detail-page .section {
    padding: 26px;
  }

  .lan-project-detail-page .visual-grid img {
    height: 220px;
  }
}


/* Lan Project detail: section color sequence and CTA spacing */
.lan-project-detail-page .section.soft-blue {
  background: var(--blue);
  border-color: rgba(143, 194, 237, .38);
}

.lan-project-detail-page .section.soft-mint {
  background: var(--mint);
  border-color: rgba(148, 219, 196, .42);
}

.lan-project-detail-page .section.soft-lavender {
  background: var(--lavender);
  border-color: rgba(201, 174, 255, .46);
}

.lan-project-detail-page .section.soft-peach {
  background: var(--peach);
  border-color: rgba(232, 186, 170, .42);
}

.lan-project-detail-page .section + .cta-banner,
.lan-project-detail-page .related-grid + .cta-banner {
  margin-top: 28px;
}

.lan-project-detail-page .section.soft-lavender + .cta-banner {
  margin-top: 28px;
}



/* Lan Project detail: Related Projects approved lavender background */
.lan-project-detail-page .section.soft-lavender {
  background: #faf8ff;
  border-color: rgba(211, 190, 255, .62);
}

.lan-project-detail-page .section.soft-lavender .related-card {
  background: rgba(255, 255, 255, .72);
  border-color: rgba(232, 221, 214, .95);
  box-shadow: 0 18px 48px rgba(44, 33, 28, .055);
}


/* Lan Project detail: scoped soft-mint background for Key Visuals */
.lan-project-detail-page .section.soft-mint {
  background: radial-gradient(circle at 8% 12%, #effcf7, transparent 28%),
    radial-gradient(circle at 94% 6%, #effcf7, transparent 24%),
    linear-gradient(135deg, #f4fff8 0%, #effcf7 48%,#fff4ee 100%);
  border-color: rgba(148, 219, 196, .42);
}

.lan-project-detail-page .section.soft-mint .visual-grid img {
  border-color: rgba(148, 219, 196, .42);
}


/* Subpage header polish: restore divider and brand icon */
body:not(.home):not(.front-page) .lp-site-header {
  border-bottom: 1px solid var(--line);
}

body:not(.home):not(.front-page) .lp-header-editable,
body:not(.home):not(.front-page) .lp-nav {
  border-bottom: 0;
}

.lp-site-header .lp-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.lp-site-header .lp-brand::before {
  content: "✦";
  display: inline-block;
  color: currentColor;
  font-size: .95em;
  line-height: 1;
}


/* Global header: use the homepage header style on every page */
.lan-global-header {
  position: sticky;
  top: 0;
  z-index: 40;
}

.lan-global-header .nav,
body:not(.home):not(.front-page) .lan-global-header .nav {
  height: 76px;
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 56px;
  background: rgba(255, 252, 248, .86);
  backdrop-filter: blur(16px);
}

.lan-global-header .brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: .03em;
  color: var(--ink);
}

.lan-global-header .brand::before {
  content: "✦";
  display: inline-block;
  color: currentColor;
  font-size: .95em;
  line-height: 1;
  margin-right: 0;
}

.lan-global-header .menu {
  display: flex;
  align-items: center;
  gap: 34px;
  font-size: 13px;
  font-weight: 650;
}

.lan-global-header .menu a {
  color: var(--ink);
  opacity: .78;
}

.lan-global-header .menu a:hover {
  color: var(--accent);
  opacity: 1;
}

.lan-global-header .header-contact-info {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.25;
  white-space: nowrap;
}

.lan-global-header .header-contact-info span {
  color: var(--accent-2);
  font-weight: 650;
}

@media (max-width: 900px) {
  .lan-global-header .nav,
  body:not(.home):not(.front-page) .lan-global-header .nav {
    height: auto;
    min-height: 76px;
    padding: 18px 24px;
    flex-wrap: wrap;
    gap: 14px;
  }

  .lan-global-header .menu {
    order: 3;
    width: 100%;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
  }

  .lan-global-header .header-contact-info {
    align-items: flex-end;
  }
}

@media (max-width: 640px) {
  .lan-global-header .nav,
  body:not(.home):not(.front-page) .lan-global-header .nav {
    justify-content: center;
    text-align: center;
  }

  .lan-global-header .header-contact-info {
    width: 100%;
    align-items: center;
  }
}


/* Project category / All Projects listing background */
.lp-section.lp-section--mint,
.lp-section.lp-section--mint.soft-mint,
.lan-project-archive .lp-section--mint,
[data-lp-filter-container] .lp-section--mint {
  background:
    radial-gradient(circle at 86% 18%, rgba(255, 255, 255, .70), transparent 34%),
    linear-gradient(135deg, #faf3eb 0%, #fff8f1 52%, #fffdf8 100%);
  border-color: rgba(232, 221, 214, .86);
}


/* Project category filter button hover: keep white background and black text */
.lp-filter-bar .lp-filter-button:hover {
  background: #fff;
  color: var(--lp-ink, var(--ink));
  border: 1px solid rgba(234, 222, 216, .84);
}

.lp-filter-bar a.lp-filter-button:hover {
  background: #fff;
  color: var(--lp-ink, var(--ink));
  border: 1px solid rgba(234, 222, 216, .84);
  text-decoration: none;
}

.lp-filter-bar .lp-filter-button.is-active,
.lp-filter-bar .lp-filter-button[data-lp-active="true"] {
  background: var(--lp-ink, var(--ink));
  color: #fff;
  border-color: var(--lp-ink, var(--ink));
}


/* All Projects card summary font weight */
.lp-all-project-grid .all-project-card .lp-project-summary,
.lan-project-archive .all-project-card .lp-project-summary,
[data-lp-filter-container] .all-project-card .lp-project-summary {
  font-weight: 400;
}


/* Header WordPress menu support */
.lan-global-header .menu.menu--wp {
  display: flex;
  align-items: center;
}

.lan-global-header .lan-header-wp-menu,
.lan-global-header .menu.menu--wp > ul {
  display: flex;
  align-items: center;
  gap: 34px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.lan-global-header .lan-header-wp-menu li,
.lan-global-header .menu.menu--wp > ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.lan-global-header .lan-header-wp-menu a,
.lan-global-header .menu.menu--wp > ul a {
  color: var(--ink);
  opacity: .78;
  font-size: 13px;
  font-weight: 650;
  text-decoration: none;
}

.lan-global-header .lan-header-wp-menu a:hover,
.lan-global-header .lan-header-wp-menu .current-menu-item > a,
.lan-global-header .lan-header-wp-menu .current_page_item > a,
.lan-global-header .menu.menu--wp > ul a:hover,
.lan-global-header .menu.menu--wp > ul .current-menu-item > a,
.lan-global-header .menu.menu--wp > ul .current_page_item > a {
  color: var(--accent);
  opacity: 1;
}

@media (max-width: 900px) {
  .lan-global-header .lan-header-wp-menu,
  .lan-global-header .menu.menu--wp > ul {
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
  }
}




/* Sticky header fixed behavior v2 */
.lan-global-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
  z-index: 9999;
  box-sizing: border-box;
  transition: box-shadow .24s ease, background-color .24s ease, transform .24s ease;
}

body.lan-sticky-header-active {
  padding-top: var(--lan-header-height, 76px);
}

.admin-bar .lan-global-header {
  top: 32px;
}

.lan-global-header.is-sticky-disabled {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  width: 100%;
}

.admin-bar .lan-global-header.is-sticky-disabled {
  top: auto;
}

/* Prevent WPBakery wrappers inside header from adding negative margins/extra width */
.lan-global-header .vc_row,
.lan-global-header .wpb_row,
.lan-global-header .wpb_column,
.lan-global-header .vc_column_container,
.lan-global-header .vc_column-inner,
.lan-global-header .wpb_wrapper {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.lan-global-header .nav,
body:not(.home):not(.front-page) .lan-global-header .nav {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  overflow: hidden;
  background: rgba(255, 252, 248, .92);
}

.lan-global-header.is-scrolled .nav {
  background: rgba(255, 252, 248, .97);
  border-bottom-color: rgba(234, 222, 216, .96);
  box-shadow: 0 10px 34px rgba(44, 33, 28, .075);
}

.lan-global-header .brand {
  flex: 0 0 auto;
  white-space: nowrap;
}

.lan-global-header .menu {
  flex: 1 1 auto;
  min-width: 0;
  justify-content: center;
}

.lan-global-header .header-contact-info {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 28vw;
  overflow: hidden;
}

.lan-global-header .header-contact-info a,
.lan-global-header .header-contact-info span {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 1100px) {
  .lan-global-header .nav,
  body:not(.home):not(.front-page) .lan-global-header .nav {
    padding-left: 32px;
    padding-right: 32px;
  }

  .lan-global-header .header-contact-info {
    max-width: 32vw;
  }
}

@media (max-width: 900px) {
  body.lan-sticky-header-active {
    padding-top: var(--lan-header-height, 112px);
  }

  .lan-global-header .header-contact-info {
    max-width: none;
  }
}

@media (max-width: 782px) {
  .admin-bar .lan-global-header {
    top: 46px;
  }
}

@media (max-width: 600px) {
  .admin-bar .lan-global-header {
    top: 0;
  }
}


/* Tablet/mobile drawer header */
.lan-mobile-menu-toggle,
.lan-mobile-drawer,
.lan-mobile-drawer-overlay {
  display: none;
}

.lan-mobile-menu-toggle {
  appearance: none;
  border: 1px solid rgba(234, 222, 216, .84);
  border-radius: 999px;
  background: rgba(255, 255, 255, .72);
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  padding: 0;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(44, 33, 28, .045);
}

.lan-mobile-menu-toggle span {
  width: 18px;
  height: 2px;
  border-radius: 99px;
  background: var(--ink);
  display: block;
}

.lan-mobile-drawer-overlay {
  position: fixed;
  inset: 0;
  z-index: 9998;
  background: rgba(17, 16, 15, .28);
  opacity: 0;
  pointer-events: none;
  transition: opacity .24s ease;
}

.lan-mobile-drawer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: min(360px, 86vw);
  height: 100vh;
  background: rgba(255, 252, 248, .98);
  border-right: 1px solid rgba(234, 222, 216, .9);
  box-shadow: 24px 0 70px rgba(44, 33, 28, .16);
  transform: translateX(-104%);
  transition: transform .28s cubic-bezier(.22, .61, .36, 1);
  padding: 24px;
  box-sizing: border-box;
  overflow-y: auto;
}

.admin-bar .lan-mobile-drawer {
  top: 32px;
  height: calc(100vh - 32px);
}

.lan-mobile-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 22px;
  border-bottom: 1px solid rgba(234, 222, 216, .84);
}

.lan-mobile-drawer-head .brand {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .03em;
}

.lan-mobile-drawer-close {
  appearance: none;
  border: none;
  border-radius: 999px;
  background: transparent;
  width: 42px;
  height: 42px;
  position: relative;
  flex: 0 0 auto;
  cursor: pointer;
}

.lan-mobile-drawer-close span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 17px;
  height: 2px;
  border-radius: 99px;
  background: var(--ink);
  transform-origin: center;
}

.lan-mobile-drawer-close span:first-child {
  transform: translate(-50%, -50%) rotate(45deg);
}

.lan-mobile-drawer-close span:last-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.lan-mobile-drawer-nav,
.lan-header-drawer-menu {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 26px 0 0;
  padding: 0;
  list-style: none;
}

.lan-header-drawer-menu li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.lan-mobile-drawer-nav a,
.lan-header-drawer-menu a {
  display: flex;
  align-items: center;
  min-height: 52px;
  border-bottom: 1px solid rgba(234, 222, 216, .68);
  color: var(--ink);
  font-size: 22px;
  line-height: 1.08;
  font-weight: 750;
  letter-spacing: -.045em;
  text-decoration: none;
}

.lan-mobile-drawer-nav a:hover,
.lan-header-drawer-menu a:hover {
  color: var(--accent);
}

.lan-mobile-drawer-contact {
  margin-top: 28px;
  padding: 18px;
  border: 1px solid rgba(234, 222, 216, .84);
  border-radius: 6px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.lan-mobile-drawer-contact a,
.lan-mobile-drawer-contact span {
  color: var(--ink);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.lan-mobile-drawer-contact span {
  color: var(--accent-2);
}

body.lan-mobile-drawer-open {
  overflow: hidden;
}

body.lan-mobile-drawer-open .lan-mobile-drawer-overlay {
  opacity: 1;
  pointer-events: auto;
}

body.lan-mobile-drawer-open .lan-mobile-drawer {
  transform: translateX(0);
}

@media (max-width: 1024px) {
  .lan-global-header .nav,
  body:not(.home):not(.front-page) .lan-global-header .nav {
    height: 72px;
    min-height: 72px;
    padding: 0 32px;
    justify-content: space-between;
    gap: 18px;
  }

  .lan-global-header .menu,
  .lan-global-header .header-contact-info {
    display: none;
  }

  .lan-mobile-menu-toggle,
  .lan-mobile-drawer,
  .lan-mobile-drawer-overlay {
    display: flex;
  }

  .lan-mobile-drawer-overlay {
    display: block;
  }

  .lan-global-header .brand {
    font-size: 15px;
  }
}

@media (max-width: 782px) {
  .admin-bar .lan-mobile-drawer {
    top: 46px;
    height: calc(100vh - 46px);
  }
}

@media (max-width: 640px) {
  .lan-global-header .nav,
  body:not(.home):not(.front-page) .lan-global-header .nav {
    padding: 0 18px;
  }

  .lan-mobile-menu-toggle {
    width: 42px;
    height: 42px;
  }

  .lan-mobile-drawer {
    width: min(330px, 88vw);
    padding: 20px;
  }

  .lan-mobile-drawer-nav a,
  .lan-header-drawer-menu a {
    font-size: 20px;
    min-height: 50px;
  }
}

@media (max-width: 600px) {
  .admin-bar .lan-mobile-drawer {
    top: 0;
    height: 100vh;
  }
}


/* Tablet/mobile drawer header repair */
@media (max-width: 1024px) {
  .lan-global-header .nav,
  body:not(.home):not(.front-page) .lan-global-header .nav {
    height: 72px;
    min-height: 72px;
    padding: 0 32px;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    overflow: visible;
    border: none !important;
  }

  .lan-global-header .nav > .brand {
    flex: 0 1 auto;
    min-width: 0;
    max-width: calc(100% - 64px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .lan-global-header .nav > .menu,
  .lan-global-header .nav > .menu.menu--wp,
  .lan-global-header .nav > .menu .lan-header-wp-menu,
  .lan-global-header .nav > .menu.menu--wp > ul,
  .lan-global-header .nav > .header-contact-info {
    display: none;
  }

  .lan-global-header .nav > .lan-mobile-menu-toggle {
    display: inline-flex;
    flex: 0 0 44px;
    margin-left: auto;

    border: none;
    background: transparent;
  }

  .lan-global-header .lan-mobile-drawer-overlay {
    display: block;
  }

  .lan-global-header .lan-mobile-drawer {
    display: block;
    flex-direction: column;
    width: min(360px, 86vw);
    max-width: 86vw;
    background: radial-gradient(circle at 8% 12%, rgba(232,91,70,.12), transparent 28%),
    radial-gradient(circle at 94% 6%, rgba(139,107,98,.10), transparent 24%),
    linear-gradient(135deg,#fff2ee 0%,#fffaf6 50%,#fff0eb 100%)!important;
  }

  .lan-global-header .lan-mobile-drawer .brand {
    max-width: calc(100% - 58px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .lan-global-header .lan-mobile-drawer-nav,
  .lan-global-header .lan-header-drawer-menu {
    width: 100%;
    background: transparent !important;
        margin-top: 0;
        border-bottom: 0 !important;
        box-shadow: none !important;
  }

  .lan-global-header .lan-mobile-drawer-contact {
    width: 100%;
    box-sizing: border-box;
  }

  .lan-global-header .lan-mobile-drawer-contact a,
  .lan-global-header .lan-mobile-drawer-contact span {
    display: block;
    width: 100%;
    white-space: normal;
    word-break: normal;
    overflow-wrap: anywhere;
  }
}

@media (max-width: 640px) {
  .lan-global-header .nav,
  body:not(.home):not(.front-page) .lan-global-header .nav {
    height: 58px;
    min-height: 58px;
    padding: 0 18px;
    border: none !important;
  }

  .lan-global-header .nav > .brand {
    font-size: 14px;
    max-width: calc(100% - 58px);
  }

  .lan-global-header .nav > .lan-mobile-menu-toggle {
    flex-basis: 42px;
    width: 42px;
    height: 42px;
  }

  .lan-global-header .lan-mobile-drawer {
    width: min(330px, 88vw);
    max-width: 88vw;
  }
}


/* Mobile drawer visual tweak */
.lan-global-header .lan-mobile-menu-toggle {
  border-radius: 6px;
  border-color: #151313;
  background: #fff;
  box-shadow: none;
}

.lan-global-header .lan-mobile-menu-toggle span {
  background: #151313;
}

.lan-global-header .lan-mobile-drawer-nav a,
.lan-global-header .lan-header-drawer-menu a,
.lan-global-header .lan-header-drawer-menu .current-menu-item > a,
.lan-global-header .lan-header-drawer-menu .current_page_item > a,
.lan-global-header .lan-mobile-drawer-nav a:hover,
.lan-global-header .lan-header-drawer-menu a:hover {
  background: transparent;
  color: var(--ink);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -.02em;
  min-height: 46px;
}

.lan-global-header .lan-mobile-drawer-nav a:hover,
.lan-global-header .lan-header-drawer-menu a:hover {
  color: var(--accent);
}


/* Shrink global header when scrolled */
.lan-global-header.is-scrolled .nav,
body:not(.home):not(.front-page) .lan-global-header.is-scrolled .nav {
  height: 50px;
  min-height: 50px;
}

.lan-global-header.is-scrolled .brand {
  font-size: 15px;
}

.lan-global-header.is-scrolled .menu,
.lan-global-header.is-scrolled .lan-header-wp-menu,
.lan-global-header.is-scrolled .menu.menu--wp > ul {
  font-size: 12px;
}

.lan-global-header.is-scrolled .header-contact-info {
  font-size: 11px;
}

@media (max-width: 1024px) {
  .lan-global-header.is-scrolled .nav,
  body:not(.home):not(.front-page) .lan-global-header.is-scrolled .nav {
    height: 50px;
    min-height: 50px;
  }

  .lan-global-header.is-scrolled .lan-mobile-menu-toggle {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }
}





/* Mobile drawer contact: soft-mint background */
.lan-global-header .lan-mobile-drawer-contact {
  background:
    radial-gradient(circle at 8% 12%, #effcf7, transparent 28%),
    radial-gradient(circle at 94% 6%, #effcf7, transparent 24%),
    linear-gradient(135deg, #f4fff8 0%, #effcf7 48%,#fff4ee 100%);
  border-color: rgba(148, 219, 196, .42);
}

/* Hero morph blob group: main + mint + peach in one controllable layer */
.portrait-wrap{
  isolation:isolate;
}
.portrait-wrap::before{
  content:none!important;
  display:none!important;
  animation:none!important;
}
.hero-morph-blobs{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
}
.hero-morph-blob{
  position:absolute;
  display:block;
  transform-origin:center;
  will-change:transform,border-radius;
  pointer-events:none;
  filter:blur(.15px);
}
.hero-morph-blob--main{
  width:min(520px,41vw);
  height:min(520px,41vw);
  left:50%;
  top:42px;
  z-index:1;
  border-radius:34% 66% 58% 42% / 45% 38% 62% 55%;
  background:
    radial-gradient(circle at 30% 24%, rgba(255,255,255,.92), rgba(255,255,255,0) 30%),
    radial-gradient(circle at 72% 74%, rgba(88,114,168,.16), rgba(88,114,168,0) 34%),
    linear-gradient(135deg,
      rgba(231,238,248,.98) 0%,
      rgba(204,216,236,.92) 34%,
      rgba(181,198,226,.86) 68%,
      rgba(225,233,245,.82) 100%
    );
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.60),
    0 26px 72px rgba(48,69,110,.10);
  animation:heroMorphBlobMainGroup 6.5s ease-in-out infinite alternate;
}
.hero-morph-blob--mint{
  width:190px;
  height:206px;
  left:57%;
  top:148px;
  z-index:2;
  opacity:.94;
  border-radius:56% 44% 48% 52% / 44% 54% 46% 56%;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.62), rgba(255,255,255,0) 32%),
    linear-gradient(145deg, rgba(229,247,240,.92) 0%, rgba(199,234,221,.88) 46%, rgba(167,214,196,.84) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.48),
    0 18px 42px rgba(117,177,152,.16);
  animation:heroMorphBlobMint 11.5s ease-in-out infinite alternate;
}
.hero-morph-blob--peach{
  width:156px;
  height:170px;
  left:65%;
  top:292px;
  z-index:2;
  opacity:.92;
  border-radius:43% 57% 52% 48% / 58% 42% 56% 44%;
  background:
    radial-gradient(circle at 36% 30%, rgba(255,255,255,.58), rgba(255,255,255,0) 30%),
    linear-gradient(150deg, rgba(255,239,232,.94) 0%, rgba(246,214,197,.88) 52%, rgba(234,191,171,.82) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.44),
    0 16px 36px rgba(201,141,118,.16);
  animation:heroMorphBlobPeach 13s ease-in-out infinite alternate;
}
.portrait-wrap::after{
  z-index:0!important;
}
.portrait-card{
  z-index:3!important;
}
.hero-script-words{
  z-index:4!important;
}
@keyframes heroMorphBlobMainGroup{
  0%{
    border-radius:34% 66% 58% 42% / 45% 38% 62% 55%;
    transform:translateX(-50%) rotate(0deg) scale(1);
  }
  25%{
    border-radius:62% 38% 44% 56% / 50% 64% 36% 50%;
    transform:translateX(-50%) rotate(5deg) scale(1.045);
  }
  55%{
    border-radius:46% 54% 70% 30% / 64% 42% 58% 36%;
    transform:translateX(-50%) rotate(-4deg) scale(.985);
  }
  80%{
    border-radius:68% 32% 50% 50% / 40% 58% 42% 60%;
    transform:translateX(-50%) rotate(3deg) scale(1.025);
  }
  100%{
    border-radius:42% 58% 36% 64% / 56% 35% 65% 44%;
    transform:translateX(-50%) rotate(-2deg) scale(1.06);
  }
}
@keyframes heroMorphBlobMint{
  0%{
    border-radius:56% 44% 48% 52% / 44% 54% 46% 56%;
    transform:translate3d(0,0,0) rotate(-8deg) scale(1);
  }
  35%{
    border-radius:47% 53% 58% 42% / 52% 43% 57% 48%;
    transform:translate3d(10px,-8px,0) rotate(-2deg) scale(1.04);
  }
  68%{
    border-radius:60% 40% 46% 54% / 40% 58% 42% 60%;
    transform:translate3d(-8px,6px,0) rotate(6deg) scale(.98);
  }
  100%{
    border-radius:45% 55% 53% 47% / 58% 42% 54% 46%;
    transform:translate3d(6px,-4px,0) rotate(2deg) scale(1.02);
  }
}
@keyframes heroMorphBlobPeach{
  0%{
    border-radius:43% 57% 52% 48% / 58% 42% 56% 44%;
    transform:translate3d(0,0,0) rotate(10deg) scale(1);
  }
  42%{
    border-radius:55% 45% 40% 60% / 48% 58% 42% 52%;
    transform:translate3d(-10px,8px,0) rotate(4deg) scale(1.05);
  }
  74%{
    border-radius:46% 54% 58% 42% / 60% 40% 54% 46%;
    transform:translate3d(8px,-6px,0) rotate(14deg) scale(.97);
  }
  100%{
    border-radius:58% 42% 47% 53% / 46% 56% 44% 54%;
    transform:translate3d(-4px,3px,0) rotate(8deg) scale(1.03);
  }
}
@media (prefers-reduced-motion: reduce){
  .hero-morph-blob--main,
  .hero-morph-blob--mint,
  .hero-morph-blob--peach{
    animation:none;
  }
}

