  :root{
    --paper:#EFE1C4; --paper-2:#E6D3AF; --card:#FCF8EF;
    --ink:#2A271E; --ink-soft:#5E5648; --ink-faint:#8C8472;
    --pine:#1E3A2D; --moss:#6F8059;
    --clay:#C05A33; --clay-deep:#9E4A2A; --ochre:#D79A48;
    --line:rgba(42,39,30,.14);
    --shadow:0 1px 2px rgba(42,39,30,.05),0 10px 28px rgba(42,39,30,.09);
    --shadow-lg:0 3px 8px rgba(42,39,30,.08),0 28px 64px rgba(42,39,30,.20);
    --serif:"Fraunces",Georgia,serif; --sans:"Mulish",sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:var(--sans);background:var(--paper);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  body::before{content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.045;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
  img{display:block;max-width:100%}
  a{color:inherit;text-decoration:none}
  ::selection{background:var(--clay);color:#fff}
  .wrap{max-width:1180px;margin:0 auto;padding:0 32px}
  h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.01em}
  .btn{font-family:var(--sans);font-weight:700;font-size:.95rem;cursor:pointer;border:none;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:.55em;transition:transform .25s,box-shadow .25s,background .25s,color .25s}
  .btn-clay{background:var(--clay);color:#fff;padding:14px 30px}
  .btn-clay:hover{background:var(--clay-deep);transform:translateY(-2px);box-shadow:0 12px 26px rgba(192,90,51,.4)}
  .btn-cream{background:rgba(252,248,239,.92);color:var(--pine);padding:14px 30px}
  .btn-cream:hover{background:#fff;transform:translateY(-2px);box-shadow:var(--shadow)}

  .topbar{background:var(--pine);color:rgba(233,219,182,.97);text-align:center;font-family:var(--serif);font-style:italic;font-size:.92rem;padding:9px 16px}
  .topbar b{font-style:normal;font-weight:600;color:var(--ochre)}

  header{position:sticky;top:0;z-index:1000;padding:16px 0;background:rgba(233,219,182,.97);backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(192,90,51,.22)}
  .nav{display:flex;align-items:center;justify-content:space-between;gap:24px}
  .logo{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-size:1.3rem;color:var(--pine)}
  .logo .mark{width:38px;height:38px;flex:none}.logo b{font-weight:600}
  .nav-links{display:flex;align-items:center;gap:24px}
  .nav-links a{font-size:.88rem;font-weight:700;color:var(--ink-soft);position:relative;transition:.25s}
  .nav-links a.active{color:var(--clay)}
  .nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1.5px;background:var(--clay);transition:width .3s}
  .nav-links a:hover{color:var(--ink)}.nav-links a:hover::after,.nav-links a.active::after{width:100%}
  .hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:1200}
  .hamburger span{width:24px;height:2px;background:var(--ink);transition:.3s}

  /* HERO */
  .vhero{text-align:center;padding:62px 0 46px;position:relative}
  .vhero .eyebrow{font-size:.74rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--clay);display:inline-block;margin-bottom:14px}
  .vhero h1{font-size:clamp(2.4rem,5.2vw,4rem);color:var(--pine);max-width:14em;margin:0 auto}
  .vhero h1 em{font-style:italic;color:var(--clay)}
  .vhero p{font-size:1.18rem;color:var(--ink-soft);max-width:36em;margin:20px auto 0}

  /* FEATURED INTERVIEW */
  .feat{display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:center;padding:30px 0 70px}
  .feat .portrait{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/5;background:linear-gradient(135deg,var(--clay),var(--ochre));box-shadow:var(--shadow-lg)}
  .feat .portrait img{width:100%;height:100%;object-fit:cover}
  .feat .portrait .tag{position:absolute;top:16px;left:16px;background:rgba(244,235,217,.94);color:var(--pine);font-weight:700;font-size:.74rem;padding:6px 14px;border-radius:100px}
  .feat .qm{font-family:var(--serif);font-size:5rem;line-height:.5;color:var(--clay);opacity:.5}
  .feat blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2.8vw,2.2rem);line-height:1.32;color:var(--pine);margin:8px 0 22px}
  .feat .who{display:flex;align-items:center;gap:14px;margin-bottom:22px}
  .feat .who .av{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:1.4rem;color:#fff;background:linear-gradient(135deg,var(--pine),var(--moss));flex:none}
  .feat .who b{font-family:var(--serif);font-weight:500;font-size:1.18rem;display:block}
  .feat .who span{color:var(--ink-faint);font-size:.9rem}
  .slink{display:inline-flex;align-items:center;gap:.5em;color:var(--clay);font-weight:700;font-size:.95rem}
  .slink svg{transition:transform .3s}
  .feat:hover .slink svg,.icard:hover .slink svg{transform:translateX(5px)}

  /* RULE TITLE */
  .rule-title{display:flex;align-items:center;justify-content:center;gap:22px;color:var(--clay);font-size:clamp(1.7rem,3.4vw,2.6rem);margin-bottom:8px;text-align:center}
  .rule-title::before,.rule-title::after{content:"";height:1.5px;width:clamp(30px,7vw,90px);background:linear-gradient(90deg,transparent,var(--clay))}
  .rule-title::after{transform:scaleX(-1)}
  .sub-center{text-align:center;color:var(--ink-soft);font-size:1.05rem;max-width:40em;margin:0 auto 44px}
  .sec{padding:72px 0}
  .grey{background:var(--paper-2)}

  /* INTERVIEW GRID */
  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
  .icard{background:var(--card);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);transition:transform .4s,box-shadow .4s;cursor:pointer;display:flex;flex-direction:column}
  .icard:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
  .icard .ph{height:230px;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--moss),var(--pine))}
  .icard .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
  .icard:hover .ph img{transform:scale(1.06)}
  .ibody{padding:24px 26px 26px;display:flex;flex-direction:column;flex:1}
  .ibody .name{font-family:var(--serif);font-size:1.35rem;color:var(--ink)}
  .ibody .place{font-size:.8rem;color:var(--clay);font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin:4px 0 14px}
  .ibody .quote{font-family:var(--serif);font-style:italic;font-size:1.08rem;line-height:1.4;color:var(--ink-soft);flex:1}
  .ibody .slink{margin-top:18px;font-size:.88rem}

  /* HOST CTA + STEPS */
  .cta{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--clay),var(--clay-deep));color:#fff;border-radius:28px;padding:56px 54px;box-shadow:var(--shadow-lg);text-align:center}
  .cta::after{content:"";position:absolute;inset:0;opacity:1;background:radial-gradient(135% 135% at 0% 0%,rgba(255,255,255,.17),transparent 55%),radial-gradient(120% 120% at 100% 100%,rgba(0,0,0,.24),transparent 60%)}
  .cta>*{position:relative;z-index:2}
  .cta h2{margin-bottom:12px}
  .cta>p{max-width:36em;margin:0 auto 30px;opacity:.95}
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:760px;margin:0 auto 32px}
  .step{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:16px;padding:22px 20px}
  .step .n{font-family:var(--serif);color:#fff;opacity:.7;margin-bottom:6px}
  .step b{display:block;margin-bottom:4px}
  .step p{opacity:.9}
  .cta .btn-cream{color:var(--clay-deep)}

  footer{background:var(--pine);color:rgba(244,235,217,.78);padding:60px 0 30px;margin-top:80px}
  .foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(244,235,217,.16)}
  .foot-brand .logo{color:var(--paper);margin-bottom:14px}
  .foot-brand .sig{font-family:var(--serif);font-style:italic;font-size:1.05rem;color:rgba(233,219,182,.97)}
  .foot-brand .sig b{font-style:normal;color:var(--ochre)}
  .foot-brand p{max-width:26em;font-size:.92rem;margin-top:10px}
  .foot-col h4{font-family:var(--sans);font-weight:800;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ochre);margin-bottom:15px}
  .foot-col a{display:block;font-size:.92rem;padding:5px 0;transition:color .2s}.foot-col a:hover{color:var(--paper)}
  .socials{display:flex;gap:12px;margin-top:20px}
  .socials a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(244,235,217,.28);display:grid;place-items:center;transition:.25s}
  .socials a:hover{background:var(--ochre);border-color:var(--ochre);color:var(--pine);transform:translateY(-3px)}
  .foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:22px;font-size:.83rem;color:rgba(244,235,217,.6)}

  .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1)}
  .reveal.in{opacity:1;transform:none}

  @media(max-width:980px){
    .feat{grid-template-columns:1fr;gap:32px}
    .feat .portrait{max-width:380px;aspect-ratio:4/4}
    .grid{grid-template-columns:repeat(2,1fr)}
    .steps{grid-template-columns:1fr}
    .foot-grid{grid-template-columns:1fr 1fr}
  }
  @media(max-width:760px){
    .wrap{padding:0 22px}
    .nav-links{position:fixed;inset:0 0 0 auto;width:min(82vw,330px);background:var(--paper);flex-direction:column;justify-content:center;align-items:flex-start;gap:22px;padding:40px;transform:translateX(100%);transition:transform .4s;box-shadow:var(--shadow-lg)}
    .nav-links.open{transform:none}
    .nav-links a{font-size:1.18rem;font-family:var(--serif);color:var(--pine)}
    .hamburger{display:flex}
    .hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .hamburger.open span:nth-child(2){opacity:0}
    .hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    .grid{grid-template-columns:1fr}
    .cta{padding:42px 22px}
    .foot-grid{grid-template-columns:1fr}
  }

/* ===== Elementor bridges ===== */
.e-con.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.e-con.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.e-con.who{display:flex;flex-direction:row;align-items:center;gap:14px}
.e-con.icard{display:flex;flex-direction:column;min-width:0}
.vhero .elementor-heading-title{color:var(--pine)!important}
.cta .elementor-heading-title{color:#fff!important}
.step .elementor-heading-title{color:#fff!important}
.cta .elementor-widget-text-editor{color:rgba(255,255,255,.95)!important}
.step .elementor-widget-text-editor{color:rgba(255,255,255,.95)!important}
.icard .portrait,.e-con.icard .portrait{min-height:0!important}
.who .portrait,.e-con.who .portrait{width:64px!important;height:64px!important;min-height:0!important;border-radius:50%;flex:none}
.e-con.portrait{background-size:cover!important;background-position:center!important}
@media(max-width:900px){.e-con.grid,.e-con.steps{grid-template-columns:1fr!important}}

/* vhero featured testimonial */
.vhero .quote{font-family:var(--serif);font-style:italic;font-size:1.5rem;line-height:1.5;color:var(--pine);max-width:760px;margin:40px auto 26px;position:relative}
.vhero .who{display:flex!important;flex-direction:row!important;align-items:center;justify-content:center;gap:14px;margin-top:4px}
.vhero .who .portrait{width:64px!important;height:64px!important;min-height:0!important;border-radius:50%!important;overflow:hidden;aspect-ratio:auto!important;max-width:none!important;flex:none;background-size:cover!important;background-position:center!important;box-shadow:0 6px 16px rgba(42,39,30,.18)}
.vhero .who .portrait img{width:100%;height:100%;object-fit:cover}
.vhero .who .portrait .tag{display:none}
.vhero .nameblock{text-align:left}
.vhero .name{font-family:var(--serif)!important;font-weight:600;font-size:1.14rem;color:var(--ink)!important;margin:0}
.vhero .place{color:var(--ink-faint);font-size:.92rem;margin:0}
@media(max-width:600px){.vhero .quote{font-size:1.2rem}}

/* who row fix (boxed container inner) */
.vhero .who,.vhero .who>.e-con-inner{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:14px!important}
.vhero .who>.e-con-inner{width:auto!important;margin:0 auto!important}
.vhero .who .portrait{align-self:center!important}
.vhero .nameblock,.vhero .nameblock>.e-con-inner{text-align:left!important;display:block!important}

/* who row fix v2 - shrink items so group centers */
.vhero .who{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:14px!important}
.vhero .who>.portrait{flex:0 0 auto!important;width:64px!important;height:64px!important;min-height:0!important;border-radius:50%!important;overflow:hidden;aspect-ratio:auto!important;max-width:none!important;background-size:cover!important;background-position:center!important;box-shadow:0 6px 16px rgba(42,39,30,.18)}
.vhero .who>.nameblock{flex:0 0 auto!important;width:auto!important;text-align:left!important;align-items:flex-start!important}
.vhero .who>.nameblock .name{text-align:left!important}
.vhero .who>.nameblock .place{text-align:left!important}
