/* ── WORK PAGE (slick, results-led) ─────────────────────────────────────── */
.work-hero{position:relative;background:var(--dark);overflow:hidden;padding:128px var(--gutter) 80px}
.work-hero::before{content:'';position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(232,104,48,0.22),transparent 70%);filter:blur(100px);top:-140px;right:-60px;pointer-events:none}
.work-hero-inner{position:relative;z-index:1;max-width:var(--max);margin:0 auto}
.work-hero .eyebrow{color:var(--white)}
.work-hero-h1{font-size:clamp(40px,6.5vw,84px);font-weight:300;letter-spacing:-0.04em;line-height:0.98;color:var(--white);margin-bottom:24px}
.work-hero-h1 em{font-style:italic;color:var(--orange)}
.work-hero-sub{font-size:18px;color:rgba(255,255,255,0.5);font-weight:300;line-height:1.6;max-width:460px}

/* Featured */
.work-feature{padding:48px var(--gutter) 0;background:var(--cream)}
.work-feature-card{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr;background:var(--white);border:1px solid var(--border);border-radius:5px;overflow:hidden;text-decoration:none;color:var(--dark);transition:box-shadow 0.3s,transform 0.25s}
.work-feature-card:hover{box-shadow:0 24px 64px rgba(26,22,20,0.13);transform:translateY(-3px)}
.work-feature-media{position:relative;overflow:hidden;background:var(--dark);aspect-ratio:16/11}
.work-feature-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.7s var(--ease)}
.work-feature-card:hover .work-feature-media img{transform:scale(1.04)}
.work-feature-body{padding:48px;display:flex;flex-direction:column;justify-content:center}
.work-feature-flag{display:inline-block;align-self:flex-start;background:var(--orange);color:var(--white);font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:5px 13px;border-radius:100px;margin-bottom:18px}
.work-feature-sector{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.work-feature-title{font-size:clamp(26px,3vw,40px);font-weight:300;letter-spacing:-0.03em;line-height:1.08;color:var(--dark);margin-bottom:26px}
.work-feature-stats{display:flex;gap:40px;margin-bottom:30px;padding:22px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.work-feature-stat{display:flex;flex-direction:column}
.wfs-num{font-size:clamp(30px,3.5vw,44px);font-weight:300;color:var(--orange);letter-spacing:-0.04em;line-height:1}
.wfs-lbl{font-size:12px;color:var(--mid);margin-top:6px;font-weight:400;line-height:1.4;max-width:140px}
.work-feature-cta{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--dark);transition:gap 0.2s}
.work-feature-card:hover .work-feature-cta{gap:14px;color:var(--orange)}

/* Filter bar */
.work-filter-bar{padding:40px var(--gutter) 0;background:var(--cream)}
.work-filter-inner{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;gap:8px;padding-bottom:0}
.work-filter{font-family:var(--f);font-size:13px;font-weight:500;color:var(--mid);background:transparent;border:1.5px solid var(--border);border-radius:100px;padding:9px 20px;cursor:pointer;transition:all 0.18s;white-space:nowrap}
.work-filter:hover{border-color:var(--dark);color:var(--dark)}
.work-filter.active{background:var(--dark);color:var(--white);border-color:var(--dark)}

/* Grid */
.work-grid-wrap{padding:32px var(--gutter) 88px;background:var(--cream)}
.work-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.work-tile{display:block;text-decoration:none;color:var(--dark)}
.work-tile-media{position:relative;border-radius:5px;overflow:hidden;background:var(--dark);aspect-ratio:4/3}
.work-tile-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.6s var(--ease)}
.work-tile:hover .work-tile-media img{transform:scale(1.05)}
.work-bold-ph{width:100%;height:100%;background:linear-gradient(135deg,#2d1a0a,var(--dark))}
/* Result chip — the headline metric, always visible */



.work-tile-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 4px 0}
.work-tile-sector{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:6px}
.work-tile-title{font-size:19px;font-weight:400;letter-spacing:-0.02em;line-height:1.2;color:var(--dark);transition:color 0.2s}
.work-tile:hover .work-tile-title{color:var(--orange)}
.work-tile-arrow{flex-shrink:0;width:38px;height:38px;border-radius:50%;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--dark);transition:all 0.25s var(--ease)}
.work-tile:hover .work-tile-arrow{background:var(--orange);border-color:var(--orange);color:var(--white)}
.work-no-results{max-width:var(--max);margin:0 auto;padding:80px var(--gutter);text-align:center;color:var(--mid);font-size:16px;font-weight:300}
.work-no-results a{color:var(--orange);text-decoration:none;border-bottom:1px solid var(--orange)}

@media(max-width:1000px){
  .work-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .work-hero{padding:96px 20px 56px}
  .work-feature{padding:32px 20px 0}
  .work-feature-card{grid-template-columns:1fr}
  .work-feature-body{padding:28px}
  .work-feature-stats{gap:28px}
  .work-filter-bar{padding:28px 20px 0}
  .work-grid-wrap{padding:24px 20px 64px}
  .work-grid{grid-template-columns:1fr;gap:28px}
}

/* ════════════════════════════════════════════════════════════════════════════
   Revo Agency — v7.0
   Design language: Warm cream, pill buttons, rounded cards, blob glows, 
   staggered animations. Matching the revo-denver.com aesthetic.
   ════════════════════════════════════════════════════════════════════════════ */

/* ── FONTS ─────────────────────────────────────────────────────────────── */
@font-face{font-family:'Catalogue';src:url('../fonts/Catalogue-Light.woff2') format('woff2'),url('../fonts/Catalogue-Light.otf') format('opentype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Catalogue';src:url('../fonts/Catalogue-LightItalic.woff2') format('woff2'),url('../fonts/Catalogue-LightItalic.otf') format('opentype');font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:'Catalogue';src:url('../fonts/Catalogue-Regular.woff2') format('woff2'),url('../fonts/Catalogue-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Catalogue';src:url('../fonts/Catalogue-Italic.woff2') format('woff2'),url('../fonts/Catalogue-Italic.otf') format('opentype');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Catalogue';src:url('../fonts/Catalogue-Medium.woff2') format('woff2'),url('../fonts/Catalogue-Medium.otf') format('opentype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Catalogue';src:url('../fonts/Catalogue-MediumItalic.woff2') format('woff2'),url('../fonts/Catalogue-MediumItalic.otf') format('opentype');font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:'Catalogue';src:url('../fonts/Catalogue-Bold.woff2') format('woff2'),url('../fonts/Catalogue-Bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}

/* ── RESET & ROOT ───────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --cream:   #F5F0E8;
  --cream-dk:#EDE7D8;
  --light:#EDE7D8;
  --orange:  #E86830;
  --dark:    #1A1614;
  --mid:     #6B5F56;
  --white:   #FFFFFF;
  --border:  #DDD5C4;
  --f:       'Catalogue', Georgia, serif;
  --max:     1200px;
  --gutter:  max(24px, calc((100vw - 1200px) / 2 + 24px));
  --ease:    cubic-bezier(0.25,0.46,0.45,0.94);
}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--f);background:var(--cream);color:var(--dark);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:var(--f);cursor:pointer;background:none;border:none}

/* ── CONTAINER ─────────────────────────────────────────────────────────── */
.container{max-width:var(--max);margin:0 auto;padding:0 40px}
@media(max-width:768px){.container{padding:0 20px}}

/* ── ANIMATIONS ─────────────────────────────────────────────────────────── */
@keyframes up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes scrollBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
@keyframes scrollDrop{0%{top:-100%}100%{top:200%}}

.reveal{opacity:0;transform:translateY(16px);transition:opacity 0.55s var(--ease),transform 0.55s var(--ease);will-change:opacity,transform}
.reveal.visible{opacity:1;transform:none}
.reveal-1{transition-delay:0.06s}.reveal-2{transition-delay:0.12s}
.reveal-3{transition-delay:0.18s}.reveal-4{transition-delay:0.24s}
/* Auto-reveal applied by JS to section content site-wide */
.r-auto{opacity:0;transform:translateY(16px);transition:opacity 0.55s var(--ease),transform 0.55s var(--ease)}
.r-auto.r-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  .reveal,.reveal.visible,.r-auto,.r-auto.r-in{opacity:1!important;transform:none!important;transition:none!important}
}

/* ── EYEBROW ────────────────────────────────────────────────────────────── */
.eyebrow{display:inline-flex;width:max-content;max-width:100%;align-items:center;gap:11px;font-size:15px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--dark)}
.eyebrow::before{content:'';width:10px;height:10px;background:var(--orange);border-radius:50%;flex-shrink:0}

/* ── BUTTONS ────────────────────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--f);font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;transition:all 0.2s var(--ease);white-space:nowrap}
.btn-primary{display:inline-flex;align-items:center;gap:6px;color:var(--white);border:none;border-radius:0;background:transparent;padding:0;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;font-weight:500;font-size:13px;transition:transform 0.15s;line-height:1}
.btn-primary>svg{display:none}
.btn-primary .btn-label{display:inline-flex;align-items:center;padding:11px 16px;background:var(--dark);border-radius:5px;transition:background 0.15s;white-space:nowrap}
.btn-primary .btn-arrow{display:inline-flex;align-items:center;justify-content:center;width:36px;align-self:stretch;flex-shrink:0;background:var(--dark);border-radius:5px;transition:background 0.15s}
.btn-primary .btn-arrow svg{display:block;transition:transform 0.2s}
.btn-primary:hover{transform:translateY(-1px)}
.btn-primary:hover .btn-label,.btn-primary:hover .btn-arrow{background:#3D3430}
.btn-primary:hover .btn-arrow svg{transform:translate(2px,-2px)}
.btn-orange{background:var(--orange);color:var(--white);padding:13px 26px;border-radius:100px;border:none}
.btn-orange:hover{opacity:0.88;transform:translateY(-1px)}
.btn-outline,.btn-ghost,.btn-text,.btn-secondary{display:inline-flex;align-items:center;background:transparent;color:var(--dark);padding:11px 16px;border-radius:5px;border:none;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;font-size:13px;line-height:1;font-weight:500;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;cursor:pointer;transition:background 0.18s,color 0.18s}
.btn-outline:hover,.btn-ghost:hover,.btn-text:hover,.btn-secondary:hover{background:var(--dark);color:var(--white);text-decoration:none}
.btn-outline svg,.btn-ghost svg,.btn-text svg,.btn-secondary svg{display:none}

/* On-dark variants (for dark sections like the CTA band) */
.btn-primary--on-dark .btn-label,.btn-primary--on-dark .btn-arrow{background:var(--white)}
.btn-primary--on-dark .btn-label{color:var(--dark)}
.btn-primary--on-dark .btn-arrow svg{stroke:var(--orange)}
.btn-primary--on-dark:hover .btn-label,.btn-primary--on-dark:hover .btn-arrow{background:#F0EBE2}
.btn-outline--on-dark{color:var(--white)}
.btn-outline--on-dark:hover{background:var(--white);color:var(--dark)}

/* Calendly popup: constrain close button so it never renders huge/misplaced before CSS loads */
.calendly-overlay{position:fixed!important}
.calendly-overlay .calendly-popup{max-width:1000px!important;position:relative!important;background:var(--white)!important;border-radius:5px!important;box-shadow:0 30px 80px rgba(26,22,20,0.28)!important;overflow:hidden!important}
.calendly-overlay .calendly-popup-close,.calendly-popup-close{width:30px!important;height:30px!important;max-width:30px!important;max-height:30px!important;padding:0!important;cursor:pointer!important;z-index:2147483647!important;border-radius:5px!important;background-color:transparent!important;background-repeat:no-repeat!important;background-position:center!important;background-size:20px 20px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%231A1614' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E")!important;box-shadow:none!important;opacity:0.55!important;transition:opacity 0.15s!important}
.calendly-overlay .calendly-popup-close:hover,.calendly-popup-close:hover{opacity:1!important}
.calendly-overlay .calendly-popup-content,.calendly-overlay .calendly-inline-widget,.calendly-overlay .calendly-popup iframe,.calendly-overlay .calendly-popup div,.calendly-overlay>div,.calendly-overlay div{border:0!important;outline:0!important;box-shadow:none!important}
.calendly-overlay .calendly-popup-content,.calendly-overlay .calendly-inline-widget,.calendly-overlay .calendly-popup iframe{border:none!important;border-radius:0!important;background:transparent!important;padding:0!important;margin:0!important}
.btn-ghost-dark{color:rgba(255,255,255,0.5);font-size:14px;font-weight:500;text-decoration:underline;text-underline-offset:3px;transition:color 0.2s}
.btn-ghost-dark:hover{color:var(--white)}

/* ── NAV ────────────────────────────────────────────────────────────────── */
#main-nav{
  position:fixed;top:0;left:0;right:0;z-index:300;
  padding:0 40px;
  background:rgba(245,240,232,0.92);
  backdrop-filter:blur(16px);
  border-bottom:1px solid transparent;
  transition:border-color 0.3s,box-shadow 0.3s;
}
.admin-bar #main-nav{top:32px}
@media screen and (max-width:782px){.admin-bar #main-nav{top:46px}}
#main-nav.scrolled{border-color:var(--border);box-shadow:0 2px 20px rgba(0,0,0,0.06)}
#main-nav.nav--transparent{background:transparent;border-color:transparent}
#main-nav.nav--transparent:not(.scrolled) .nav-link{color:rgba(255,255,255,0.7)}
#main-nav.nav--transparent:not(.scrolled) .nav-cta-label,#main-nav.nav--transparent:not(.scrolled) .nav-cta-arrow{background:var(--dark)}
#main-nav.nav--transparent.scrolled{background:rgba(245,240,232,0.96);border-color:var(--border)}
#main-nav.nav--transparent.scrolled .nav-link{color:var(--dark)}
#main-nav.nav--transparent.scrolled .nav-cta-label,#main-nav.nav--transparent.scrolled .nav-cta-arrow{background:var(--dark)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:var(--max);margin:0 auto;height:60px}
.nav-logo{position:relative;z-index:1}
.nav-logo svg{height:28px;width:auto;display:block;transition:height 0.3s;shape-rendering:geometricPrecision;transform:translateZ(0)}
#main-nav.scrolled .nav-logo svg{height:24px}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-link{font-size:14px;font-weight:400;color:var(--dark);padding:6px 12px;border-radius:100px;transition:color 0.15s,background 0.15s;text-decoration:none}
.nav-link:hover{color:var(--orange)}
.nav-link--active{color:var(--orange)}
/* WordPress primary menu rendered inline like nav-links */
.nav-wp-menu{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.nav-wp-menu li{margin:0;padding:0;list-style:none}
.nav-wp-menu li a{display:inline-flex;align-items:center;font-size:14px;font-weight:400;color:var(--dark);padding:6px 12px;border-radius:100px;transition:color 0.15s,background 0.15s;text-decoration:none}
.nav-wp-menu li a:hover{color:var(--orange)}
.nav-wp-menu li.current-menu-item a,.nav-wp-menu li.current_page_item a{color:var(--orange)}
#main-nav.nav--transparent:not(.scrolled) .nav-wp-menu li a{color:rgba(255,255,255,0.7)}
#main-nav.nav--transparent.scrolled .nav-wp-menu li a{color:var(--dark)}
.nav-right{display:flex;align-items:center;gap:10px}
.nav-cta{display:inline-flex;align-items:stretch;gap:6px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;font-size:13px;font-weight:500;background:transparent;color:var(--white);text-decoration:none;transition:transform 0.15s}
.nav-cta-label{display:inline-flex;align-items:center;padding:11px 16px;background:var(--dark);border-radius:5px;transition:background 0.15s}
.nav-cta-arrow{display:inline-flex;align-items:center;justify-content:center;width:36px;background:var(--dark);border-radius:5px;transition:background 0.15s}
.nav-cta-arrow svg{transition:transform 0.2s}
.nav-cta:hover .nav-cta-arrow svg{transform:translate(2px,-2px)}
.nav-cta:hover .nav-cta-label,.nav-cta:hover .nav-cta-arrow{background:#3D3430}
.nav-cta:hover{transform:translateY(-1px)}
/* Dropdown */
.nav-dropdown{position:relative}
.nav-dropdown-panel{position:absolute;top:calc(100%+8px);left:-12px;background:var(--white);border:1px solid var(--border);border-radius:5px;padding:8px;min-width:220px;box-shadow:0 8px 32px rgba(0,0,0,0.08);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px);transition:all 0.18s}
.nav-dropdown:hover .nav-dropdown-panel,.nav-dropdown:focus-within .nav-dropdown-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.nav-dropdown-panel a{display:block;font-size:13px;padding:9px 14px;border-radius:5px;color:var(--dark);text-decoration:none;transition:background 0.12s}
.nav-dropdown-panel a:hover{background:var(--cream);color:var(--orange)}
/* Mobile */
.nav-burger{display:none;flex-direction:column;gap:5px;padding:6px;border-radius:5px;cursor:pointer;color:var(--dark)}
.nav-burger span{display:block;width:22px;height:1.5px;background:currentColor;transition:transform 0.2s,opacity 0.2s}
.nav-burger.open span:nth-child(1){transform:rotate(45deg) translate(4.5px,5px)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:rotate(-45deg) translate(4.5px,-5px)}
.nav-mobile{position:fixed;inset:0;background:var(--cream);z-index:400;display:none;overflow-y:auto;-webkit-overflow-scrolling:touch}
.nav-mobile.open{display:block}
.nm-inner{padding:96px 24px 48px;min-height:100%;box-sizing:border-box;display:flex;flex-direction:column}
.admin-bar .nav-mobile .nm-inner{padding-top:120px}
.nm-section{margin-bottom:36px}
.nm-label{font-size:11px;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--orange);margin-bottom:8px;display:block}
.nm-section a{display:flex;align-items:center;font-size:22px;font-weight:300;letter-spacing:-0.01em;color:var(--dark);text-decoration:none;padding:15px 0;border-bottom:1px solid var(--border)}
.nm-section li{list-style:none;margin:0;padding:0}
.nm-section a::after{content:"";width:18px;height:18px;flex-shrink:0;margin-left:auto;background:center/contain no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23C9BBA8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E");opacity:0.8;transition:transform 0.15s}
.nm-section a:active{color:var(--orange)}
.nm-section a:active::after{transform:translateX(3px)}
.nm-badge{display:inline-block;margin-left:10px;font-size:10px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--orange);background:rgba(232,104,48,0.12);padding:3px 9px;border-radius:100px;vertical-align:middle}
.nm-cta{display:flex;flex-direction:column;gap:12px;margin-top:auto;padding-top:32px}
.nm-btn-primary{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;box-sizing:border-box;padding:18px 24px;background:var(--dark);color:var(--white);border-radius:5px;text-decoration:none;font-size:16px;font-weight:500;letter-spacing:-0.01em;transition:background 0.15s}
.nm-btn-primary svg{width:16px;height:16px}
.nm-btn-primary:active{background:#3D3430}
.nm-btn-outline{display:flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;padding:18px 24px;background:transparent;color:var(--dark);border:1px solid var(--border);border-radius:5px;text-decoration:none;font-size:16px;font-weight:400;letter-spacing:-0.01em;transition:border-color 0.15s,color 0.15s}
.nm-btn-outline:active{border-color:var(--orange);color:var(--orange)}
.nm-close{position:fixed;top:16px;right:20px;z-index:401;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--dark);border:none;border-radius:5px;cursor:pointer}
.nm-close svg{width:18px;height:18px;stroke:var(--white)}

/* ── HERO — PLAIN DARK ──────────────────────────────────────────────────── */
.hero-full{
  min-height:88svh;background:var(--dark);
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:80px 40px 60px;position:relative;overflow:hidden;
}
.hero-glow{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(232,104,48,0.22),transparent 70%);filter:blur(80px);top:-60px;right:-40px;pointer-events:none;z-index:0;transition:transform 0.8s var(--ease)}
.hero-blob2{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(255,200,140,0.2),transparent 70%);filter:blur(70px);bottom:20px;left:8%;pointer-events:none;z-index:0}
.hero-full-inner{position:relative;z-index:2;max-width:var(--max);margin:0 auto;width:100%}
.hero-eyebrow{display:inline-flex;align-self:flex-start;width:max-content;max-width:100%;align-items:center;gap:11px;font-size:15px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--dark);margin-bottom:22px;opacity:0;animation:up 0.7s var(--ease) 0.1s forwards}
.hero-eyebrow::before{content:'';width:10px;height:10px;background:var(--orange);border-radius:50%;flex-shrink:0}
.hero-h1{font-size:clamp(48px,8vw,110px);font-weight:300;letter-spacing:-0.04em;line-height:0.97;color:var(--white);margin-bottom:0;opacity:0;animation:up 0.8s var(--ease) 0.2s forwards;max-width:900px}
.hero-h1 em{font-style:italic;color:var(--orange)}
.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;flex-wrap:wrap;padding-top:28px}
.hero-sub{font-size:17px;color:rgba(255,255,255,0.45);font-weight:300;line-height:1.65;max-width:440px;opacity:0;animation:up 0.8s var(--ease) 0.35s forwards}
.hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;opacity:0;animation:up 0.8s var(--ease) 0.45s forwards}
.hero-scroll{position:absolute;bottom:32px;right:40px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:9px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.2);opacity:0;animation:up 1s var(--ease) 1.2s forwards}
.hero-scroll-line{width:1px;height:48px;background:rgba(255,255,255,0.1);position:relative;overflow:hidden}
.hero-scroll-line::after{content:'';position:absolute;top:-100%;left:0;width:100%;height:100%;background:linear-gradient(to bottom,transparent,var(--orange),transparent);animation:scrollDrop 2s ease-in-out infinite}

/* ── HERO V2 — light cream, cursor gradient, large 16:9 video ──────────── */
.hero-v2{position:relative;background:var(--cream);overflow:hidden;padding:120px 40px 72px;min-height:90svh;display:flex;align-items:center}
.hero-v2-cursor{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(232,104,48,0.18),rgba(232,104,48,0.05) 45%,transparent 70%);filter:blur(40px);pointer-events:none;z-index:0;left:0;top:0;transform:translate(-50%,-50%);transition:transform 0.18s var(--ease)}
.hero-v2-glow{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,200,140,0.18),transparent 70%);filter:blur(80px);bottom:-60px;left:-40px;pointer-events:none;z-index:0}
.hero-v2-inner{position:relative;z-index:2;max-width:var(--max);margin:0 auto;width:100%;display:grid;grid-template-columns:0.85fr 1.15fr;gap:56px;align-items:center}
.hero-v2.no-media .hero-v2-inner{grid-template-columns:1fr;max-width:900px}
.hero-v2-text{min-width:0}
.hero-v2-h1{font-size:clamp(44px,6vw,88px);font-weight:300;letter-spacing:-0.04em;line-height:0.98;color:var(--dark);margin:0 0 26px}
.hero-v2-h1 em{font-style:italic;color:var(--orange)}
.hero-v2-sub{font-size:17px;color:var(--mid);font-weight:300;line-height:1.65;max-width:420px;margin-bottom:34px}
.hero-v2-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.hero-v2 .hero-eyebrow{margin-bottom:24px}

/* Media container — large, clean 16:9 */
.hero-v2-media{position:relative}
.hero-v2-media-frame{position:relative;padding:8px;border:1px solid var(--border);border-radius:5px;background:var(--white);box-shadow:0 16px 50px rgba(26,22,20,0.12)}
.hero-v2-media-inner{position:relative;aspect-ratio:16/9;border-radius:5px;overflow:hidden;background:#0d0b0a}
.hero-v2-media-inner video,.hero-v2-media-inner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
/* Creative showreel treatment */







100%{transform:scale(1.5);opacity:0}}
@keyframes hvPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.4;transform:scale(0.7)}}
.hero-v2-scroll{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:9px;letter-spacing:0.12em;text-transform:uppercase;color:var(--mid)}
.hero-v2-scroll .hero-scroll-line{width:1px;height:48px;background:var(--border);position:relative;overflow:hidden}
.hero-v2-scroll .hero-scroll-line::after{content:'';position:absolute;top:-100%;left:0;width:100%;height:100%;background:linear-gradient(to bottom,transparent,var(--orange),transparent);animation:scrollDrop 1.4s ease-in-out infinite}

/* Entrance animations */
.hero-v2 .hero-eyebrow{opacity:0;animation:up 0.7s var(--ease) 0.1s forwards}
.hero-v2-h1{opacity:0;animation:up 0.8s var(--ease) 0.2s forwards}
.hero-v2-sub{opacity:0;animation:up 0.8s var(--ease) 0.35s forwards}
.hero-v2-actions{opacity:0;animation:up 0.8s var(--ease) 0.45s forwards}
.hero-v2-media{opacity:0;animation:up 0.9s var(--ease) 0.5s forwards}
@media(prefers-reduced-motion:reduce){
  .hero-eyebrow,.hero-h1,.hero-sub,.hero-actions,.hero-scroll,.hero-v2 .hero-eyebrow,.hero-v2-h1,.hero-v2-sub,.hero-v2-actions,.hero-v2-media{opacity:1!important;animation:none!important;transform:none!important}
  .reveal{opacity:1!important;transform:none!important}
}

/* MOBILE: video drops below text */
@media(max-width:900px){
  .hero-v2{padding:96px 24px 56px;min-height:auto}
  .hero-v2-inner{grid-template-columns:1fr;gap:40px}
  .hero-v2-text{order:1}
  .hero-v2-media{order:2}
  .hero-v2-h1{font-size:clamp(40px,11vw,64px)}
  .hero-v2-sub{max-width:none}
  .hero-v2-scroll{display:none}
  .hero-v2-cursor{display:none}
  
  
}
@media(max-width:480px){
  .hero-v2{padding:88px 18px 48px}
  .hero-v2-media-frame{padding:6px;border-radius:5px}
}

/* ── HERO — PAGE HEADER (light) ─────────────────────────────────────────── */
.page-hero{padding:110px var(--gutter) 64px;background:var(--cream);border-bottom:1px solid var(--border)}
.page-hero-inner{max-width:var(--max);margin:0 auto;width:100%}
.page-hero-inner .ph-h1,.page-hero-inner .ph-sub{max-width:820px}
.ph-badge{display:inline-block;background:var(--orange);color:var(--white);font-size:10px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:4px 14px;border-radius:100px;margin-bottom:20px}
.ph-eyebrow{margin-bottom:20px}
.ph-h1{font-size:clamp(40px,6vw,80px);font-weight:300;letter-spacing:-0.03em;line-height:1.05;margin-bottom:22px;color:var(--dark);opacity:0;animation:up 0.8s var(--ease) 0.1s forwards}
.ph-h1 em{font-style:italic;color:var(--orange)}
.ph-sub{font-size:18px;color:var(--mid);font-weight:300;line-height:1.65;max-width:560px;margin-bottom:32px}
.ph-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}

/* ── TICKER ─────────────────────────────────────────────────────────────── */
.ticker{overflow:hidden}
.ticker--dark{background:var(--dark);padding:13px 0}
.ticker--light{background:var(--cream-dk);padding:13px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.ticker--orange{background:var(--orange);padding:13px 0}
.tk-track{display:flex;width:max-content;animation:marquee 30s linear infinite}
.tk-track:hover{animation-play-state:paused}
.tk-item{display:flex;align-items:center;gap:16px;padding:0 26px;font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;white-space:nowrap}
.ticker--dark .tk-item{color:rgba(255,255,255,0.45)}
.ticker--light .tk-item{color:rgba(26,22,20,0.35)}
.ticker--orange .tk-item{color:rgba(255,255,255,0.85)}
.tk-dot{width:4px;height:4px;border-radius:50%;background:var(--orange);flex-shrink:0}
.ticker--orange .tk-dot{background:rgba(255,255,255,0.5)}

/* ── LOGO MARQUEE ───────────────────────────────────────────────────────── */
.logos-section{padding:40px 0;background:var(--cream);overflow:hidden}
.logos-row{display:flex;align-items:center;gap:48px;padding-left:var(--gutter)}
.logos-label{font-size:14px;font-weight:300;line-height:1.4;color:var(--mid);width:150px;flex-shrink:0;margin:0;text-align:left}
.logos-viewport{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 88%,transparent);mask-image:linear-gradient(to right,transparent,#000 6%,#000 88%,transparent)}
.logos-track{display:flex;align-items:center;width:max-content;animation:marquee 80s linear infinite;will-change:transform}
.logos-track:hover{animation-play-state:paused}
.logos-item{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:260px;height:150px;margin-right:24px;background:var(--white);border:1px solid var(--border);border-radius:5px}
.logos-item span{font-size:15px;font-weight:500;color:var(--dark);letter-spacing:0.04em;white-space:nowrap}
.logos-item img{max-height:60px;max-width:170px;width:auto;object-fit:contain;display:block}
@media(max-width:768px){
  .logos-row{flex-direction:column;align-items:flex-start;gap:20px;padding-right:var(--gutter)}
  .logos-label{width:auto}
  .logos-viewport{width:100%}
  .logos-item{width:180px;height:110px}
}

/* ── STATS BAND ─────────────────────────────────────────────────────────── */
.stats-band{padding:64px 40px}
.stats-band.bg-dark{background:var(--dark)}
.stats-band.bg-cream{background:var(--cream-dk)}
.stats-band-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.stat-block{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:28px 24px;position:relative;overflow:hidden}
.stats-band.bg-dark .stat-block{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.08)}
.stat-block::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 120%,rgba(232,104,48,0.08),transparent 65%);pointer-events:none}
.stat-block-num{font-size:clamp(40px,5vw,64px);font-weight:300;color:var(--dark);letter-spacing:-0.04em;line-height:1;margin-bottom:8px}
.stats-band.bg-dark .stat-block-num{color:var(--white)}
.stat-block-num em{color:var(--orange);font-style:normal}
.stat-block-label{font-size:13px;color:var(--mid);font-weight:300;line-height:1.5}
.stats-band.bg-dark .stat-block-label{color:rgba(255,255,255,0.4)}

/* ── SERVICES LIST ──────────────────────────────────────────────────────── */
















/* ── WORK PREVIEW ───────────────────────────────────────────────────────── */
.work-section{padding:0;background:var(--cream)}
.work-section-head{padding:72px var(--gutter) 36px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.work-scroll-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;padding:0 var(--gutter) 40px;scroll-padding-left:var(--gutter)}
.work-scroll-track::-webkit-scrollbar{display:none}
.work-scroll-track:active{cursor:grabbing}
.work-card{position:relative;flex:0 0 400px;border-radius:5px;overflow:hidden;scroll-snap-align:start;background:var(--cream-dk);height:440px}
.work-card:first-child{flex:0 0 480px}
.work-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.6s var(--ease)}
.work-card:hover img{transform:scale(1.04)}
.work-card-ph{width:100%;height:100%;background:linear-gradient(135deg,var(--dark),#2d1a0a)}
.work-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(26,22,20,0.92) 0%,rgba(26,22,20,0.4) 40%,transparent 65%);display:flex;flex-direction:column;justify-content:flex-end;padding:28px;opacity:1}
.work-card-stat,.work-card-stat-label{opacity:0;transform:translateY(8px);transition:opacity 0.35s,transform 0.35s}
.work-card:hover .work-card-stat,.work-card:hover .work-card-stat-label{opacity:1;transform:none}
.work-card-sector{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:5px}
.work-card-title{font-size:20px;font-weight:300;color:var(--white);letter-spacing:-0.02em;margin-bottom:8px}
.work-card-stat{font-size:26px;font-weight:300;color:var(--white);letter-spacing:-0.03em}
.work-card-stat-label{font-size:12px;color:rgba(255,255,255,0.45);margin-top:2px}
.work-drag-hint{padding:8px var(--gutter) 40px;font-size:11px;color:var(--mid);letter-spacing:0.06em;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.work-drag-hint::before{content:'';width:22px;height:1px;background:var(--border)}

/* ── OFFER CARD (split + feature card) ──────────────────────────────────── */
.offer-card-section{padding:96px 40px;background:var(--white);position:relative;overflow:hidden}
.offer-card-section::before{content:"";position:absolute;left:-8%;bottom:-30%;width:55%;height:90%;background:radial-gradient(circle at center,rgba(232,104,48,0.22),transparent 62%);pointer-events:none;z-index:0}
.offer-card-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center;position:relative;z-index:1}
.offer-card-text h2{font-size:clamp(30px,4vw,52px);font-weight:300;letter-spacing:-0.03em;line-height:1.08;margin-bottom:24px;color:var(--dark)}
.offer-card-text h2 em{font-style:italic;color:var(--orange)}
.offer-card-body{font-size:16px;color:var(--mid);line-height:1.75;font-weight:300}
.offer-card-body p{margin-bottom:18px}
.offer-card-cta{margin-top:28px}
.offer-card{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:40px;box-shadow:0 30px 70px rgba(26,22,20,0.07)}
.offer-card-tt{font-size:20px;font-weight:400;color:var(--dark);letter-spacing:-0.01em;margin-bottom:10px}
.offer-card-price{font-size:48px;font-weight:300;color:var(--orange);letter-spacing:-0.03em;line-height:1;margin-bottom:24px}
.offer-card-divider{height:1px;background:var(--border);margin:0 0 24px}
.offer-card-label{font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--mid);margin-bottom:18px}
.offer-card-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}
.offer-card-list li{position:relative;padding-left:26px;font-size:14px;color:var(--dark);font-weight:300;line-height:1.4}
.offer-card-list li::before{content:"";position:absolute;left:0;top:1px;width:16px;height:16px;background:center/16px 16px no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23E86830' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E")}
.offer-card-note{margin:28px 0 0;font-size:13px;font-style:italic;color:var(--mid);line-height:1.6;font-weight:300}
@media(max-width:900px){
  .offer-card-section{padding:64px 20px}
  .offer-card-inner{grid-template-columns:1fr;gap:40px}
  .offer-card{padding:28px}
  .offer-card-list{grid-template-columns:1fr}
}

/* ── TEXT + IMAGE ───────────────────────────────────────────────────────── */
.text-image-section{padding:96px 40px;background:var(--cream)}
.text-image-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:stretch}
.text-image-inner.img-left{direction:rtl}
.text-image-inner.img-left>*{direction:ltr}
.ti-text .eyebrow{margin-bottom:18px}
.ti-text h2{font-size:clamp(26px,3.5vw,44px);font-weight:300;letter-spacing:-0.03em;line-height:1.15;margin-bottom:18px;color:var(--dark)}
.ti-text h2 em{font-style:italic;color:var(--orange)}
.ti-body{font-size:16px;color:var(--mid);line-height:1.75;font-weight:300;margin-bottom:14px}
.ti-body h2{font-size:26px;margin:32px 0 12px;color:var(--dark)}
.ti-body>p:first-of-type{font-size:18px;color:var(--dark);line-height:1.7}
/* Unordered lists become a clean orange checklist */
.ti-body ul{list-style:none;padding:0;margin:0 0 8px;display:grid;gap:10px}
.ti-body ul li{position:relative;margin:0;padding:16px 20px 16px 52px;background:var(--white);border:1px solid var(--border);border-radius:5px;color:var(--dark);font-size:15px;line-height:1.55;font-weight:300}
.ti-body ul.dont li::before,.rte-content ul.dont li::before{background-color:var(--dark);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M18 6L6 18M6 6l12 12'/%3E%3C/svg%3E")}
.ti-body ul li::before{content:"";position:absolute;left:18px;top:18px;width:18px;height:18px;border-radius:50%;background:var(--orange) center/9px 9px no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E")}
/* Ordered lists become a numbered feature grid */
.ti-body ol{list-style:none;list-style-type:none;padding:0;margin:8px 0 8px;display:grid;grid-template-columns:1fr;gap:12px;counter-reset:tib}
.ti-body ol li::marker{content:none}
/* If an ol item only wraps a nested list, strip its card styling and badge */
.ti-body ol li:has(>ol),.ti-body ol li:has(>ul){padding:0;background:transparent;border:none}
.ti-body ol li:has(>ol)::before,.ti-body ol li:has(>ul)::before{display:none;content:none}
.ti-body ol ol,.ti-body ol ul{margin:0}
.ti-body ol li{position:relative;margin:0;padding:16px 18px;background:var(--white);border:1px solid var(--border);border-radius:5px;color:var(--mid);font-size:13px;line-height:1.55;font-weight:300;counter-increment:tib;display:flex;flex-direction:column}
.ti-body ol li::before{content:counter(tib);display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:rgba(232,104,48,0.1);color:var(--orange);border-radius:5px;font-size:12px;font-weight:600;margin-bottom:10px}
.ti-body ol li strong{display:block;color:var(--dark);font-weight:400;font-size:14px;margin-bottom:3px;letter-spacing:-0.01em}
.ti-cta{margin-top:24px}
.text-image-inner.no-image,.text-image-inner:not(:has(.ti-image)){grid-template-columns:1fr!important;display:block!important}
.text-image-inner.no-image .ti-text,.text-image-inner:not(:has(.ti-image)) .ti-text{width:100%!important;max-width:100%!important}
.text-image-inner.no-image .ti-body,.text-image-inner:not(:has(.ti-image)) .ti-body{width:100%!important;max-width:100%!important}
.text-image-inner.no-image .ti-image{display:none!important}
.text-image-inner.no-image .ti-body ol,.text-image-inner:not(:has(.ti-image)) .ti-body ol{grid-template-columns:repeat(2,1fr)!important;width:100%!important}
.text-image-inner.no-image .ti-body ol li,.text-image-inner:not(:has(.ti-image)) .ti-body ol li{font-size:14px}
.text-image-inner.no-image .ti-body ol li strong,.text-image-inner:not(:has(.ti-image)) .ti-body ol li strong{font-size:16px}
@media(max-width:680px){.text-image-inner.no-image .ti-body ol,.text-image-inner:not(:has(.ti-image)) .ti-body ol{grid-template-columns:1fr!important}}
.ti-image{border-radius:5px;overflow:hidden;background:var(--cream-dk);align-self:stretch;min-height:380px}
.ti-image img{width:100%;height:100%;object-fit:cover;display:block}

/* ── TESTIMONIALS ───────────────────────────────────────────────────────── */
.testi-section{padding:80px 40px;background:var(--cream-dk)}
.testi-inner{max-width:var(--max);margin:0 auto}
.testi-inner{display:flex;flex-direction:column;align-items:center;text-align:center}
.testi-label{font-size:10px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--orange);margin-bottom:14px;display:inline-flex;width:max-content;align-items:center;gap:8px;border:1px solid rgba(232,104,48,0.35);border-radius:100px;padding:5px 14px;background:rgba(232,104,48,0.04)}
.testi-heading{text-align:center}
.testi-slides,.testi-dots{width:100%}
.testi-label::before{content:'';width:6px;height:6px;background:var(--orange);border-radius:50%;flex-shrink:0}
.testi-heading{font-size:clamp(24px,3.5vw,44px);font-weight:300;letter-spacing:-0.03em;margin-bottom:40px;color:var(--dark)}
.testi-heading em{font-style:italic;color:var(--orange)}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.testi-block{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:24px;display:flex;flex-direction:column}
.testi-stars{color:var(--orange);font-size:12px;letter-spacing:3px;margin-bottom:14px}
.testi-quote{font-size:14px;color:var(--mid);line-height:1.7;font-style:italic;margin-bottom:18px;flex:1}
.testi-footer{display:flex;align-items:center;gap:10px;padding-top:16px;border-top:1px solid var(--border)}
.testi-av{width:36px;height:36px;border-radius:50%;background:var(--cream-dk);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--orange);flex-shrink:0}
.testi-name{font-size:13px;font-weight:600;color:var(--dark);display:block}
.testi-co{font-size:11px;color:#B8AFA5}
/* Single scrolling testi */
.testi-slides{position:relative;text-align:center;max-width:760px;margin:0 auto}
.testi-slide{position:absolute;inset:0;opacity:0;transition:opacity 0.6s var(--ease);pointer-events:none;display:flex;flex-direction:column;align-items:center}
.testi-slide.active{opacity:1;pointer-events:auto;position:relative}
.testi-quote-lg{font-size:clamp(18px,2.5vw,26px);font-weight:300;font-style:italic;color:var(--dark);line-height:1.5;letter-spacing:-0.01em;margin-bottom:24px}
.testi-author{font-size:13px;color:var(--mid)}
.testi-author strong{color:var(--dark);font-weight:600;display:block;margin-bottom:2px}
.testi-dots{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:32px}
.testi-dot{width:6px;height:6px;border-radius:50%;background:var(--border);cursor:pointer;transition:background 0.2s,width 0.2s;border:none}
.testi-dot.active{background:var(--orange);width:20px;border-radius:3px}

/* ── PRICING ────────────────────────────────────────────────────────────── */
.pricing-section{padding:96px 40px;background:var(--cream)}
.pricing-section-head{max-width:var(--max);margin:0 auto 48px}
.pricing-section-head .eyebrow{margin-bottom:14px}
.pricing-section-head h2{font-size:clamp(28px,4vw,52px);font-weight:300;letter-spacing:-0.03em;margin-bottom:10px;color:var(--dark)}
.pricing-section-head h2 em{font-style:italic;color:var(--orange)}
.pricing-section-head p{font-size:15px;color:var(--mid);font-weight:300;line-height:1.65;max-width:480px}
.pricing-section-intro{font-size:16px!important;color:var(--mid);font-weight:300;line-height:1.7;max-width:640px!important;margin-top:14px}
.pricing-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.price-card{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:36px 32px;display:flex;flex-direction:column;transition:box-shadow 0.25s,transform 0.2s;position:relative;overflow:hidden}
.price-card::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 110%,rgba(232,104,48,0.06),transparent 65%);pointer-events:none}
.price-card:hover{box-shadow:0 8px 40px rgba(0,0,0,0.09);transform:translateY(-3px)}
.price-card--featured{background:var(--dark);border-color:var(--dark)}
.price-card--featured::after{background:radial-gradient(circle at 50% 0%,rgba(232,104,48,0.18),transparent 65%)}
.price-card--featured:hover{box-shadow:0 12px 48px rgba(26,22,20,0.35)}
.price-card--featured .pc-name{color:rgba(255,255,255,0.35)}
.price-card--featured .pc-price{color:var(--white)}
.price-card--featured .pc-period{color:rgba(255,255,255,0.3)}
.price-card--featured .pc-desc{color:rgba(255,255,255,0.45)}
.price-card--featured .pc-feature{color:rgba(255,255,255,0.6);border-color:rgba(255,255,255,0.08)}
.price-card--featured .pc-feature::before{color:var(--orange)}
.pc-badge{display:inline-block;background:var(--orange);color:var(--white);font-size:9px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:3px 12px;border-radius:100px;margin-bottom:14px;align-self:flex-start}
.pc-name{font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--mid);margin-bottom:18px}
.pc-price{font-size:clamp(36px,4vw,52px);font-weight:300;color:var(--dark);letter-spacing:-0.04em;line-height:1;margin-bottom:4px}
.pc-period{font-size:13px;color:var(--mid);margin-bottom:16px;font-weight:300}
.pc-desc{font-size:14px;color:var(--mid);line-height:1.65;font-weight:300;margin-bottom:20px}
.pc-features{list-style:none;margin-bottom:24px;flex:1}
.pc-feature{font-size:13px;padding:9px 0;border-bottom:1px solid var(--border);color:var(--dark);font-weight:300;line-height:1.5}
.pc-feature::before{content:'✓  ';color:var(--orange);font-weight:700}
.pc-cta,.revo-enquiry-trigger.pc-cta{display:block;text-align:center;padding:12px 20px;border-radius:100px;font-size:14px;font-weight:600;text-decoration:none;transition:all 0.2s;border:1.5px solid var(--border);cursor:pointer;font-family:var(--f);color:var(--dark);background:transparent;width:100%}
.pc-cta:hover,.revo-enquiry-trigger.pc-cta:hover{background:var(--dark);color:var(--white);border-color:var(--dark)}
.price-card--featured .pc-cta,.price-card--featured .revo-enquiry-trigger.pc-cta{background:var(--orange);color:var(--white);border-color:var(--orange)}
.price-card--featured .pc-cta:hover,.price-card--featured .revo-enquiry-trigger.pc-cta:hover{opacity:0.88}
.pricing-note{font-size:13px;color:var(--mid);text-align:center;margin-top:20px;max-width:var(--max);margin-left:auto;margin-right:auto}

/* ── PROCESS STEPS ──────────────────────────────────────────────────────── */
.process-section{padding:96px 40px;background:var(--cream-dk)}
.process-inner{max-width:var(--max);margin:0 auto}
.process-head{margin-bottom:48px}
.process-intro{font-size:16px;color:var(--mid);font-weight:300;line-height:1.7;max-width:640px;margin-top:14px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;background:transparent;border:none;border-radius:0;overflow:visible}
.ps-item{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:28px 24px 26px;position:relative;overflow:hidden}
.ps-item::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform 0.5s var(--ease)}
.ps-item.visible::before{transform:scaleX(1)}
.ps-num{display:inline-block;font-size:11px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--orange);background:rgba(232,104,48,0.08);padding:5px 11px;border-radius:100px;line-height:1;margin-bottom:18px;font-style:normal}
.ps-title{font-size:18px;font-weight:400;color:var(--dark);margin-bottom:8px;line-height:1.25;letter-spacing:-0.01em}
.ps-desc{font-size:13px;color:var(--mid);line-height:1.6;font-weight:300}

/* ── TEAM ───────────────────────────────────────────────────────────────── */
.team-section{padding:96px 40px;background:var(--cream)}
.team-inner{max-width:var(--max);margin:0 auto}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:40px}
.team-card{position:relative;overflow:hidden;border-radius:5px;background:var(--cream-dk)}
.team-card-img{aspect-ratio:3/4;overflow:hidden}
.team-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s var(--ease),filter 0.4s}
.team-card:hover .team-card-img img{transform:scale(1.05);filter:brightness(0.75)}
.team-card-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;background:linear-gradient(to top,rgba(26,22,20,0.75) 0%,transparent 55%);opacity:0;transition:opacity 0.3s}
.team-card:hover .team-card-overlay{opacity:1}
.team-card-name{font-size:16px;font-weight:500;color:var(--white);margin-bottom:2px}
.team-card-role{font-size:10px;color:rgba(255,255,255,0.5);letter-spacing:0.08em;text-transform:uppercase}
.team-card-ph{aspect-ratio:3/4;background:var(--cream-dk);display:flex;align-items:center;justify-content:center;font-size:44px;font-weight:300;color:var(--border)}

/* ── FAQ ────────────────────────────────────────────────────────────────── */
.faq-section{padding:72px 0;background:var(--cream)}
.faq-inner{max-width:var(--max);margin:0 auto}
.faq-head{margin-bottom:36px}
.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}
.faq-item{border:1px solid var(--border);border-radius:5px;background:var(--white);overflow:hidden;transition:border-color 0.2s,box-shadow 0.2s}
.faq-item:last-child{border-bottom:1px solid var(--border)}
.faq-item.open{border-color:var(--orange);box-shadow:0 8px 30px rgba(26,22,20,0.06)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;cursor:pointer;font-size:16px;font-weight:400;color:var(--dark);letter-spacing:-0.01em;gap:16px;user-select:none;transition:color 0.2s}
.faq-q:hover{color:var(--orange)}
.faq-icon{width:26px;height:26px;border-radius:50%;border:none;background:rgba(232,104,48,0.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--orange);transition:all 0.25s}
.faq-icon svg{width:14px;height:14px;display:block}
.faq-item.open .faq-icon{transform:rotate(45deg);background:var(--orange);color:var(--white)}
.faq-a{display:none;padding:0 22px 22px;font-size:15px;color:var(--mid);line-height:1.7;font-weight:300}
.faq-item.open .faq-a{display:block}

/* ── GRAVITY FORMS ──────────────────────────────────────────────────────── */
.gf-section{padding:80px 40px;background:var(--cream)}
.gf-inner{max-width:var(--max);margin:0 auto}
.gf-split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.gf-text .eyebrow{margin-bottom:18px}
.gf-text h2{font-size:clamp(26px,3.5vw,44px);font-weight:300;letter-spacing:-0.03em;margin-bottom:14px;line-height:1.1;color:var(--dark)}
.gf-text h2 em{font-style:italic;color:var(--orange)}
.gf-text p{font-size:16px;color:var(--mid);font-weight:300;line-height:1.65;margin-bottom:16px}
.gf-centered{max-width:560px;margin:0 auto;text-align:center}
.gf-centered h2{font-size:clamp(24px,3vw,40px);font-weight:300;letter-spacing:-0.02em;margin-bottom:10px;color:var(--dark)}
.gf-centered p{color:var(--mid);font-size:15px;margin-bottom:32px}
/* GF global beautiful styling */
.gform_wrapper{margin:0!important}
.gform_wrapper .gfield{margin-bottom:0!important}
.gform_wrapper label.gfield_label{font-family:var(--f)!important;font-size:13px!important;font-weight:600!important;color:var(--dark)!important;margin-bottom:6px!important;display:block!important}
.gform_wrapper input[type=text],.gform_wrapper input[type=email],.gform_wrapper input[type=url],.gform_wrapper input[type=tel],.gform_wrapper textarea,.gform_wrapper select{font-family:var(--f)!important;font-size:15px!important;color:var(--dark)!important;background:transparent!important;border:1px solid var(--border)!important;border-radius:5px;padding:0 20px!important;width:100%!important;transition:border-color 0.2s!important;outline:none!important;-webkit-appearance:none!important}
.gform_wrapper input[type=text],.gform_wrapper input[type=email],.gform_wrapper input[type=url],.gform_wrapper input[type=tel],.gform_wrapper select{height:52px!important}
.gform_wrapper textarea{border-radius:5px;padding:16px 22px!important}
.gform_wrapper input:focus,.gform_wrapper textarea:focus{border-color:var(--orange)!important}
.gform_wrapper .ginput_container_phone input{height:52px!important;background:transparent!important;border:1px solid var(--border)!important;border-radius:5px!important;padding:0 20px!important;font-family:var(--f)!important;font-size:15px!important;color:var(--dark)!important;width:100%!important;-webkit-appearance:none!important}
.gform_wrapper .gfield--type-radio .gfield_radio,.gform_wrapper .ginput_container_radio{display:flex!important;flex-direction:column!important;gap:8px!important}
.gform_wrapper .revo-pills .gfield_radio,.gform_wrapper .revo-pills .ginput_container_radio{flex-direction:row!important;flex-wrap:wrap!important;gap:10px!important}
.gform_wrapper .revo-pills .gchoice,.gform_wrapper .revo-pills .ginput_container_radio li{padding:0 18px!important;border-radius:5px!important;width:auto!important;height:52px!important}
.gform_wrapper .revo-pills input[type=radio]{display:none!important}
.gform_wrapper .revo-pills .gchoice:has(input:checked),.gform_wrapper .revo-pills li:has(input:checked){background:var(--dark)!important;border-color:var(--dark)!important}
.gform_wrapper .revo-pills .gchoice:has(input:checked) label,.gform_wrapper .revo-pills li:has(input:checked) label{color:var(--white)!important}
.gform_wrapper .gform_fields{display:grid!important;grid-template-columns:1fr 1fr!important;gap:32px 24px!important}
.gform_wrapper .gfield{grid-column:1 / -1}
.gform_wrapper .gfield.gf_left_half{grid-column:1 / 2}
.gform_wrapper .gfield.gf_right_half{grid-column:2 / 3}
@media(max-width:600px){.gform_wrapper .gform_fields{grid-template-columns:1fr!important}.gform_wrapper .gfield.gf_left_half,.gform_wrapper .gfield.gf_right_half{grid-column:1 / -1}}
.gform_wrapper .gfield--type-radio .gchoice,.gform_wrapper .ginput_container_radio li{position:relative!important;display:flex!important;align-items:center!important;gap:12px!important;padding:12px 18px!important;border:1.5px solid var(--border)!important;border-radius:5px;cursor:pointer!important;list-style:none!important;transition:border-color 0.15s,background 0.15s!important}
/* Make the whole option card clickable: the label grows an invisible overlay
   covering the card, so any click lands on the label and toggles the radio. */
.gform_wrapper .gfield--type-radio .gchoice label::before,.gform_wrapper .ginput_container_radio li label::before{content:'';position:absolute;inset:0;cursor:pointer}
.gform_wrapper .gfield--type-radio .gchoice:hover,.gform_wrapper .ginput_container_radio li:hover{border-color:var(--orange)!important;background:rgba(232,104,48,0.03)!important}
.gform_wrapper .gfield--type-radio input[type=radio],.gform_wrapper .ginput_container_radio input[type=radio]{accent-color:var(--orange)!important;width:17px!important;height:17px!important;flex-shrink:0!important;margin:0!important}
.gform_wrapper .revo-pills .gchoice,.gform_wrapper .revo-pills .ginput_container_radio li{display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;padding:0 18px!important;height:52px!important;border:1px solid var(--border)!important;border-radius:5px!important;width:auto!important}
.gform_wrapper .gfield--type-radio label,.gform_wrapper .ginput_container_radio label{font-family:var(--f)!important;font-size:14px!important;font-weight:400!important;color:var(--dark)!important;cursor:pointer!important;margin:0!important}
.gform_wrapper .gform_button,.gform_wrapper input[type=submit]{font-family:var(--f)!important;font-size:15px!important;font-weight:600!important;background:var(--dark)!important;color:var(--white)!important;border:none!important;border-radius:5px;padding:14px 10px!important;cursor:pointer!important;transition:all 0.2s!important;width:auto!important;display:inline-block!important}
.gform_wrapper .gform_footer{display:flex!important;justify-content:center!important;padding-left:0!important}
.gform_wrapper .gform_button:hover{background:#3D3430!important;transform:translateY(-1px)!important}
/* Multi-step page Next / Previous / Submit buttons */
.gform_wrapper .gform_page_footer{display:flex!important;gap:12px!important;align-items:center!important;justify-content:center!important;margin-top:8px!important}
.gform_wrapper .gform_next_button,.gform_wrapper .gform_previous_button,.gform_wrapper .gform_page_footer input[type=submit],.gform_wrapper .gform_page_footer .gform_button{font-family:var(--f)!important;font-size:14px!important;font-weight:500!important;line-height:1!important;background:var(--dark)!important;color:var(--white)!important;border:none!important;border-radius:5px!important;padding:14px 22px!important;cursor:pointer!important;transition:background 0.15s!important;width:auto!important;-webkit-appearance:none!important}
.gform_wrapper .gform_previous_button{background:transparent!important;color:var(--dark)!important;text-decoration:underline!important;text-underline-offset:4px!important;padding:14px 10px!important}
.gform_wrapper .gform_next_button:hover,.gform_wrapper .gform_page_footer input[type=submit]:hover{background:#3D3430!important}
.gform_wrapper .gform_previous_button:hover{background:var(--dark)!important;color:var(--white)!important;text-decoration:none!important}
.gform_wrapper .validation_error{background:#fff5f5!important;border:1px solid #fecaca!important;border-radius:5px;padding:12px 18px!important;font-family:var(--f)!important;font-size:14px!important;color:#dc2626!important;margin-bottom:20px!important}
.gform_wrapper .validation_message{font-family:var(--f)!important;font-size:12px!important;color:#dc2626!important;margin-top:4px!important}
.gform_wrapper .gfield_required{color:var(--orange)!important;margin-left:5px!important}
.gform_wrapper .gfield--input-type-hidden,.gform_wrapper .hidden_label{display:none!important}
.gform_confirmation_wrapper{font-family:var(--f)!important;font-size:16px!important;color:var(--mid)!important;padding:24px!important;background:var(--cream-dk)!important;border:1px solid var(--border)!important;border-radius:5px}

/* ── LOCATIONS ──────────────────────────────────────────────────────────── */
.locations-section{background:var(--cream-dk);border-top:1px solid var(--border)}
.locations-grid{display:grid;grid-template-columns:1fr 1fr;max-width:var(--max);margin:0 auto}
.loc-panel{padding:52px 40px;border-right:1px solid var(--border)}
.loc-panel:last-child{border-right:none}
.loc-name{font-size:22px;font-weight:300;letter-spacing:-0.02em;margin-bottom:4px;color:var(--dark)}
.loc-role{font-size:11px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:18px;display:block}
.loc-addr{font-size:14px;color:var(--mid);font-style:normal;line-height:1.7;font-weight:300;margin-bottom:18px}
.loc-link{font-size:13px;color:var(--dark);text-decoration:none;border-bottom:1px solid var(--border);padding-bottom:1px;transition:color 0.2s,border-color 0.2s}
.loc-link:hover{color:var(--orange);border-color:var(--orange)}

/* ── CONTACT PAGE ─────────────────────────────────────────────────────────── */
.contact-hero{position:relative;background:var(--cream);overflow:hidden;padding:120px 0 100px}
.contact-hero .ct-bg-glow{position:absolute;left:-5%;top:30%;width:55%;height:70%;background:radial-gradient(closest-side,rgba(232,104,48,0.28),rgba(232,104,48,0.08) 55%,transparent 75%);filter:blur(40px);pointer-events:none;z-index:0}
.ct-inner{position:relative;z-index:1;display:grid;grid-template-columns:0.85fr 1.15fr;gap:80px;align-items:start}
.ct-heading{font-size:clamp(40px,5.2vw,68px);font-weight:300;letter-spacing:-0.03em;line-height:1.04;color:var(--dark);margin:0 0 22px}
.ct-heading em{font-style:italic;color:var(--orange)}
.ct-sub{font-size:17px;font-weight:300;line-height:1.6;color:var(--mid);max-width:380px;margin:0 0 48px}
.ct-body{font-size:15px;font-weight:300;line-height:1.7;color:var(--mid);max-width:420px;margin:-32px 0 48px}
.ct-body p{margin:0 0 14px}.ct-body p:last-child{margin-bottom:0}
.ct-body a{color:var(--orange);text-decoration:underline}
.ct-support-label{display:block;font-size:13px;font-weight:400;color:var(--mid);margin-bottom:14px}
.ct-support{margin-bottom:44px}
.ct-contact-link{display:inline-flex;align-items:center;gap:8px;font-size:22px;font-weight:300;letter-spacing:-0.01em;color:var(--dark);text-decoration:none;border-bottom:1px solid var(--dark);padding-bottom:3px;margin-bottom:22px;transition:color 0.2s,border-color 0.2s}
.ct-support .ct-contact-link{display:flex;width:max-content}
.ct-contact-link:hover{color:var(--orange);border-color:var(--orange)}
.ct-contact-link .ct-arrow{flex-shrink:0}
.ct-social-icons{display:flex;gap:18px;align-items:center;line-height:0;min-height:24px}
.ct-social-icons a{color:var(--dark);transition:color 0.2s var(--ease),transform 0.2s var(--ease);display:flex;align-items:center;justify-content:center;width:24px;height:24px;line-height:0;flex:0 0 24px}
.ct-social-icons a svg{width:20px;height:20px;display:block;margin:auto;flex-shrink:0}
.ct-social-icons a .revo-social-img{width:20px;height:20px;object-fit:contain;display:block;margin:auto;flex-shrink:0}
.ct-social-icons a:hover .revo-social-img,.footer-social a:hover .revo-social-img{opacity:0.7}
.revo-social-img{transition:opacity 0.2s var(--ease)}
.ct-social-icons a:hover{color:var(--orange);transform:translateY(-2px)}
.gform_wrapper .gform_footer .gform_button,.contact-hero .gform_button{background:var(--dark)!important;color:var(--white)!important;font-family:var(--f)!important;font-size:14px!important;font-weight:400!important;border:none!important;border-radius:5px!important;padding:14px 10px!important;cursor:pointer!important;transition:background 0.15s!important;width:auto!important}
.gform_wrapper .gform_footer .gform_button:hover{background:#3D3430!important}

.contact-locs{background:var(--cream);padding:20px 0 90px}
.cl-intro{font-size:clamp(26px,3.2vw,38px);font-weight:300;letter-spacing:-0.02em;line-height:1.18;color:var(--dark);max-width:75%;margin:0 0 56px}
.cl-grid{display:grid;gap:32px}
.cl-card{border:1px solid var(--border);border-radius:5px;padding:48px 44px;display:flex;flex-direction:column;justify-content:space-between;min-height:420px;background:transparent}
.cl-title{font-size:clamp(28px,3vw,36px);font-weight:300;letter-spacing:-0.02em;color:var(--dark);margin:0 0 8px}
.cl-time{font-size:24px;font-weight:300;color:var(--mid);letter-spacing:-0.01em}
.cl-city{font-size:24px;font-weight:300;color:var(--dark);margin:0 0 14px}
.cl-addr{font-style:normal;font-size:21px;font-weight:300;line-height:1.4;color:var(--dark);margin:0 0 22px}
.cl-meta{font-size:13px;font-style:italic;color:var(--mid)}

/* ── SERVICE PAGE FORM ────────────────────────────────────────────────────── */
.service-form-section{background:var(--cream-dk);border-top:1px solid var(--border);padding:90px 0}
.service-form-inner{max-width:680px}
.service-form-head{text-align:center;margin-bottom:40px}
.service-form-head .eyebrow{justify-content:center;margin-bottom:18px}
.service-form-heading{font-size:clamp(30px,4vw,46px);font-weight:300;letter-spacing:-0.02em;line-height:1.08;color:var(--dark);margin:0 0 14px}
.service-form-heading em{font-style:italic;color:var(--orange)}
.service-form-sub{font-size:17px;font-weight:300;line-height:1.6;color:var(--mid);max-width:480px;margin:0 auto}
.service-form-body .gform_wrapper{margin:0}
.service-form-body .gform_wrapper .gform_fields{grid-template-columns:1fr 1fr!important}
.service-form-body .gform_confirmation_message{text-align:center;font-size:17px;font-weight:300;color:var(--dark);padding:32px 0}
@media(max-width:600px){.service-form-section{padding:60px 0}}
.gform_wrapper .revo-consent{grid-column:1 / -1!important}
.gform_wrapper .revo-consent .gfield_radio,.gform_wrapper .revo-consent .ginput_container_radio,.gform_wrapper .revo-consent .ginput_container_checkbox,.gform_wrapper .revo-consent .gfield_checkbox{flex-direction:column!important}
.gform_wrapper .revo-consent .gchoice,.gform_wrapper .revo-consent li{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;text-align:left!important;gap:11px!important;padding:0!important;border:none!important;background:transparent!important;height:auto!important;border-radius:0!important}
.gform_wrapper .revo-consent input[type=radio],.gform_wrapper .revo-consent input[type=checkbox]{display:inline-block!important;width:18px!important;height:18px!important;min-width:18px!important;margin-top:2px!important;accent-color:var(--orange)!important;flex-shrink:0!important;border-radius:50%!important;-webkit-appearance:none!important;appearance:none!important;border:1.5px solid var(--border)!important;background:var(--white)!important;cursor:pointer!important;position:relative!important}
.gform_wrapper .revo-consent input[type=radio]:checked,.gform_wrapper .revo-consent input[type=checkbox]:checked{background:var(--orange)!important;border-color:var(--orange)!important}
.gform_wrapper .revo-consent input[type=radio]:checked::after,.gform_wrapper .revo-consent input[type=checkbox]:checked::after{content:""!important;position:absolute!important;left:50%!important;top:50%!important;width:7px!important;height:7px!important;border-radius:50%!important;background:var(--white)!important;transform:translate(-50%,-50%)!important}
.gform_wrapper .revo-consent label{font-size:13px!important;font-weight:300!important;line-height:1.5!important;color:var(--mid)!important;cursor:pointer!important;text-align:left!important}
.gform_wrapper .revo-consent .gfield_label{display:none!important}
@media(max-width:900px){
  .ct-inner{grid-template-columns:1fr;gap:48px}
  .ct-sub{max-width:none}
  .cl-grid{grid-template-columns:1fr!important}
  .cl-intro{max-width:100%}
  .cl-card{min-height:0}
}

/* ── CTA BAND ───────────────────────────────────────────────────────────── */
.cta-band{padding:80px 40px;background:var(--dark);position:relative;overflow:hidden;text-align:center}
.cta-band-blob{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(232,104,48,0.14),transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}
.cta-band-inner{max-width:640px;margin:0 auto;position:relative;z-index:1}
.cta-band h2{font-size:clamp(24px,3.5vw,44px);font-weight:300;color:var(--white);letter-spacing:-0.03em;line-height:1.1;margin-bottom:10px}
.cta-band h2 em{color:var(--orange);font-style:italic}
.cta-band p{font-size:15px;color:rgba(255,255,255,0.4);margin-bottom:28px;font-weight:300}
.cta-band-actions{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;align-items:center}
.cta-band-actions .btn-ghost-dark{display:inline-flex;align-items:center;gap:6px;line-height:1}
.cta-band-actions .btn{display:inline-flex;align-items:center}

/* ── WIAW BANNER ────────────────────────────────────────────────────────── */
.wiaw-banner{background:var(--orange);padding:16px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.wiaw-banner-pill{background:rgba(0,0,0,0.15);color:var(--white);font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:4px 12px;border-radius:100px;white-space:nowrap}
.wiaw-banner-msg{font-size:15px;color:var(--white);font-weight:300}
.wiaw-banner-msg strong{font-weight:600}
.wiaw-banner-cta{font-size:13px;font-weight:600;color:var(--white);text-decoration:none;border-bottom:1px solid rgba(255,255,255,0.4);padding-bottom:2px;white-space:nowrap;transition:border-color 0.2s}
.wiaw-banner-cta:hover{border-color:var(--white)}

/* ── AUDIT TOOL (inside page) ───────────────────────────────────────────── */
.audit-tool-card{background:var(--white);border:1px solid var(--border);border-radius:5px;overflow:hidden;box-shadow:0 2px 28px rgba(0,0,0,0.05)}
.atc-head{padding:20px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px}
.atc-icon{width:36px;height:36px;background:var(--orange);border-radius:5px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.atc-title{font-size:14px;font-weight:600;color:var(--dark)}
.atc-sub{font-size:12px;color:var(--mid);margin-top:1px}
.atc-body{padding:22px}
/* URL input inside card */
.atc-url-row{display:flex;gap:8px;margin-bottom:6px}
.atc-url-input{flex:1;height:52px;border:1.5px solid var(--border);border-radius:100px;padding:0 20px;font-family:var(--f);font-size:14px;color:var(--dark);background:var(--white);outline:none;transition:border-color 0.2s;-webkit-appearance:none}
.atc-url-input:focus{border-color:var(--orange)}
.atc-url-input::placeholder{color:#C0BCBA}
.atc-btn{height:52px;padding:0 22px;background:var(--dark);color:var(--white);border:none;border-radius:100px;font-family:var(--f);font-size:13px;font-weight:600;cursor:pointer;transition:all 0.2s;flex-shrink:0}
.atc-btn:hover{background:#3D3430;transform:translateY(-1px)}
.atc-hint{font-size:11px;color:#C0BCBA;padding-left:4px;margin-top:3px}
/* Findings */
.at-finding{background:var(--cream);border:1px solid var(--border);border-radius:5px;padding:18px 20px;display:block}
.at-finding-num{width:32px;height:32px;background:var(--orange);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--white);flex-shrink:0;margin-bottom:12px}
.at-finding-title{font-size:16px;font-weight:600;color:var(--dark);margin-bottom:8px;line-height:1.35}
.at-finding-body{font-size:14px;color:var(--mid);line-height:1.65;margin-bottom:12px}
.at-finding-impact{display:inline-flex;align-items:center;gap:5px;background:#FEF2EB;border:1px solid #F8D5BB;color:#9B4010;font-size:12px;font-weight:600;padding:5px 14px;border-radius:5px}
/* Spinner */
.at-spinner{width:36px;height:36px;border:2.5px solid var(--border);border-top-color:var(--orange);border-radius:50%;animation:spin 0.75s linear infinite;margin:0 auto 12px}

/* ── ENQUIRY MODAL ──────────────────────────────────────────────────────── */
#revo-enquiry-modal{transition:opacity 0.22s;opacity:0}
#revo-enquiry-modal[style*="block"]{opacity:1}
#revo-modal-inner{transition:transform 0.25s var(--ease)}

/* ── RICH TEXT ──────────────────────────────────────────────────────────── */
.rich-text-section{padding:88px 40px;background:var(--cream)}
.rich-text-inner{margin:0 auto}
.rich-text-inner.width-narrow{max-width:720px}
.rich-text-inner.width-standard{max-width:960px}
.rich-text-inner.width-full{max-width:var(--max)}
.rte-content{font-size:16px;line-height:1.8;font-weight:300;color:var(--dark)}
.rte-content h2{font-size:28px;font-weight:300;letter-spacing:-0.02em;margin:40px 0 14px;color:var(--dark)}
.rte-content p{margin-bottom:18px;color:var(--mid)}
.rte-content>p:first-of-type{font-size:18px;color:var(--dark);line-height:1.7}

/* Unordered lists become a clean orange checklist */
.rte-content ul{list-style:none;padding:0;margin:0 0 8px;display:grid;gap:10px}
.rte-content ul li{position:relative;margin:0;padding:16px 20px 16px 52px;background:var(--white);border:1px solid var(--border);border-radius:5px;color:var(--dark);font-size:15px;line-height:1.55;font-weight:300}
.rte-content ul li::before{content:"";position:absolute;left:18px;top:16px;width:22px;height:22px;border-radius:50%;background:var(--orange) center/12px 12px no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E")}

/* Ordered lists become a numbered feature grid */
.rte-content ol{list-style:none;padding:0;margin:8px 0 8px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px;counter-reset:rte}
.rte-content ol li{position:relative;margin:0;padding:24px 24px 24px 24px;background:var(--white);border:1px solid var(--border);border-radius:5px;color:var(--mid);font-size:14px;line-height:1.6;font-weight:300;counter-increment:rte}
.rte-content ol li::before{content:counter(rte);display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:rgba(232,104,48,0.1);color:var(--orange);border-radius:5px;font-size:14px;font-weight:600;margin-bottom:14px}
.rte-content ol li strong{display:block;color:var(--dark);font-weight:400;font-size:16px;margin-bottom:4px;letter-spacing:-0.01em}
@media(max-width:680px){.rte-content ol{grid-template-columns:1fr}}

/* ── BLOG ───────────────────────────────────────────────────────────────── */
.blog-hero{padding:100px 40px 0;background:var(--cream);border-bottom:1px solid var(--border)}
.blog-hero h1{font-size:clamp(40px,6vw,80px);font-weight:300;letter-spacing:-0.04em;line-height:1;color:var(--dark)}
.blog-hero h1 em{font-style:italic;color:var(--orange)}



.blog-featured-img:hover img{transform:scale(1.03)}





.blog-list-section{padding:0 40px 80px;background:var(--cream)}
.blog-list-inner{max-width:var(--max);margin:0 auto}
.blog-list-head{font-size:10px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--mid);padding:28px 0 18px;border-bottom:1px solid var(--border)}


.blog-list-row:hover 



.blog-list-row:hover 
.blog-single-hero{padding:100px 40px 48px;background:var(--cream);border-bottom:1px solid var(--border)}
.blog-single-inner{max-width:720px;margin:0 auto}
.blog-single-cat{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:18px;display:block}
.blog-single-h1{font-size:clamp(32px,5vw,56px);font-weight:300;letter-spacing:-0.03em;line-height:1.05;margin-bottom:14px;color:var(--dark)}
.blog-single-meta{font-size:13px;color:var(--mid)}
.blog-body-section{padding:64px 40px 96px;background:var(--cream)}
.blog-body-wrap{max-width:720px;margin:0 auto;font-size:17px;line-height:1.8;font-weight:300;color:var(--dark)}
.blog-body-wrap h2{font-size:28px;font-weight:300;letter-spacing:-0.02em;margin:40px 0 14px;color:var(--dark)}
.blog-body-wrap p{margin-bottom:20px;color:var(--mid)}
.blog-body-wrap ul,.blog-body-wrap ol{padding-left:22px;margin-bottom:20px}
.blog-body-wrap li{margin-bottom:8px;color:var(--mid)}

/* ── CASE STUDY ─────────────────────────────────────────────────────────── */









.cs-stat:last-child{border-right:none}


.cs-body-section{padding:72px 40px;background:var(--cream)}
.cs-body-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 260px;gap:72px;align-items:start}
.cs-body-text{font-size:17px;line-height:1.8;font-weight:300;color:var(--dark)}
.cs-body-text h2{font-size:26px;font-weight:300;letter-spacing:-0.02em;margin:36px 0 12px;color:var(--dark)}
.cs-body-text p{margin-bottom:18px;color:var(--mid)}
.cs-body-text img{width:100%;height:auto;border-radius:5px;margin:24px 0}
.cs-sidebar{position:sticky;top:80px}
.cs-sb-block{padding:18px 0;border-top:1px solid var(--border)}
.cs-sb-label{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--mid);margin-bottom:5px}
.cs-sb-val{font-size:14px;color:var(--dark);font-weight:300;line-height:1.5}
.cs-visit{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--orange);text-decoration:none;border-bottom:1px solid var(--orange);padding-bottom:1px;margin-top:18px;transition:opacity 0.2s}
.cs-visit:hover{opacity:0.7}






.cs-archive-grid{padding:0 var(--gutter) 72px;max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cs-card{display:block;text-decoration:none;background:var(--white);border:1px solid var(--border);border-radius:5px;overflow:hidden;transition:box-shadow 0.2s,transform 0.2s}
.cs-card:hover{box-shadow:0 8px 32px rgba(0,0,0,0.08);transform:translateY(-2px)}
.cs-card:first-child{grid-column:span 2}
.cs-card-img{overflow:hidden;background:var(--cream-dk)}
.cs-card:first-child .cs-card-img{aspect-ratio:21/9}
.cs-card:not(:first-child) .cs-card-img{aspect-ratio:4/3}
.cs-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s}
.cs-card:hover .cs-card-img img{transform:scale(1.04)}
.cs-card-body{padding:22px}
.cs-card-sector{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:7px}
.cs-card-title{font-size:20px;font-weight:300;letter-spacing:-0.02em;color:var(--dark);margin-bottom:7px}
.cs-card-stat{font-size:18px;font-weight:300;color:var(--dark);margin-bottom:2px}
.cs-card-stat-label{font-size:12px;color:var(--mid)}

/* ── THANK YOU PAGE ─────────────────────────────────────────────────────── */
.thankyou-section{padding:100px 40px 80px;background:var(--cream);min-height:80svh}
.thankyou-inner{max-width:660px;margin:0 auto}

/* ── 404 ────────────────────────────────────────────────────────────────── */
.e404{min-height:80svh;display:flex;align-items:center;padding:120px 40px;background:var(--cream);position:relative;overflow:hidden}
.e404-number{position:absolute;right:-40px;top:50%;transform:translateY(-50%);font-size:clamp(180px,28vw,320px);font-weight:900;color:transparent;-webkit-text-stroke:1.5px var(--border);line-height:1;pointer-events:none;letter-spacing:-0.04em}
.e404 h1{font-size:clamp(32px,5vw,56px);font-weight:300;letter-spacing:-0.03em;margin-bottom:14px;color:var(--dark)}
.e404 h1 em{color:var(--orange);font-style:italic}
.e404 p{font-size:17px;color:var(--mid);font-weight:300;line-height:1.65;margin-bottom:32px;max-width:440px}

/* ── DEFAULT PAGE ────────────────────────────────────────────────────────── */
.default-page{padding:100px 40px 80px;background:var(--cream)}
.default-inner{max-width:840px;margin:0 auto}
.default-inner h1{font-size:clamp(36px,5vw,64px);font-weight:300;letter-spacing:-0.03em;margin-bottom:28px;color:var(--dark)}
.dp-content{font-size:16px;line-height:1.8;font-weight:300;color:var(--mid)}

/* ── PAGINATION ─────────────────────────────────────────────────────────── */
.revo-pagination{display:flex;gap:6px;justify-content:center;padding:48px 0}
.revo-pagination a,.revo-pagination span{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:100px;font-size:13px;text-decoration:none;color:var(--dark);border:1.5px solid var(--border);transition:all 0.15s}
.revo-pagination a:hover,.revo-pagination .current{background:var(--dark);color:var(--white);border-color:var(--dark)}

/* ── FOOTER ─────────────────────────────────────────────────────────────── */
.site-footer{background:var(--dark);padding:0 40px 36px;position:relative;overflow:hidden}

/* Big CTA band */
.footer-cta{padding:72px 0 56px;border-bottom:1px solid rgba(255,255,255,0.1);position:relative;z-index:2}
.footer-cta-line{display:flex;align-items:center;gap:24px;text-decoration:none;color:var(--white);font-size:clamp(34px,6vw,76px);font-weight:300;letter-spacing:-0.03em;line-height:1.02;transition:gap 0.3s var(--ease)}
.footer-cta-line span em{font-style:italic;color:var(--orange)}
.footer-cta-arrow{width:clamp(40px,6vw,72px);height:clamp(40px,6vw,72px);flex-shrink:0;color:var(--orange);transition:transform 0.3s var(--ease)}
.footer-cta-line:hover{gap:36px}
.footer-cta-line:hover .footer-cta-arrow{transform:translate(6px,-6px)}

.footer-top{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:48px;padding:56px 0 48px;position:relative;z-index:2}
.footer-brand .footer-logo{display:inline-block;margin-bottom:18px}
.footer-brand .footer-logo svg{height:24px;width:auto}
.footer-brand p{font-size:13px;color:rgba(255,255,255,0.5);line-height:1.7;font-weight:300;margin-bottom:20px;max-width:300px}
.footer-social{display:flex;gap:10px}
.footer-social a{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,0.15);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.5);font-size:13px;text-decoration:none;transition:all 0.2s}
.footer-social a svg{width:16px;height:16px;display:block}
.footer-social a .revo-social-img{width:18px;height:18px;object-fit:contain;display:block}
.footer-social a:hover{border-color:var(--orange);color:var(--orange);transform:translateY(-2px)}
.footer-col-label{font-size:10px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--orange);margin-bottom:18px;display:block}
.footer-col a{display:block;font-size:14px;color:rgba(255,255,255,0.6);text-decoration:none;margin-bottom:11px;transition:color 0.2s,transform 0.2s;font-weight:300;width:fit-content}
.footer-col li{list-style:none;margin:0;padding:0}
.footer-col li a{margin-bottom:11px}
.footer-col a:hover{color:var(--white);transform:translateX(3px)}

/* Newsletter card */
.footer-news{background:linear-gradient(150deg,rgba(232,104,48,0.16),rgba(232,104,48,0.04));border:1px solid rgba(232,104,48,0.25);border-radius:5px;padding:26px}
.footer-news-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--orange);background:rgba(232,104,48,0.15);padding:4px 10px;border-radius:100px;margin-bottom:14px}
.footer-news-title{font-size:22px;font-weight:300;letter-spacing:-0.02em;color:var(--white);margin-bottom:8px}
.footer-news-text{font-size:13px;color:rgba(255,255,255,0.55);line-height:1.6;font-weight:300;margin-bottom:18px}
.footer-news-btn{display:inline-flex;align-items:center;gap:8px;background:var(--orange);color:var(--white);font-size:13px;font-weight:500;padding:11px 18px;border-radius:100px;text-decoration:none;transition:gap 0.2s,background 0.2s}
.footer-news-btn svg{width:15px;height:15px}
.footer-news-btn:hover{gap:12px;background:#F5773C}

/* Giant faded wordmark */
.footer-watermark{position:absolute;left:50%;bottom:-7%;transform:translateX(-50%);font-size:clamp(140px,30vw,420px);font-weight:300;line-height:1;letter-spacing:-0.04em;color:rgba(255,255,255,0.03);pointer-events:none;z-index:1;white-space:nowrap}

.footer-bottom{max-width:var(--max);margin:0 auto;padding-top:24px;border-top:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;position:relative;z-index:2}
.footer-copy{font-size:12px;color:rgba(255,255,255,0.4);letter-spacing:0.02em;font-weight:300}
.footer-address{font-size:11px;color:rgba(255,255,255,0.3);font-weight:300;text-align:right}

/* ── RESPONSIVE ─────────────────────────────────────────────────────────── */
@media(max-width:1100px){
  .stats-band-inner{grid-template-columns:repeat(2,1fr)}
  .pricing-grid{grid-template-columns:1fr 1fr}
  .process-grid{grid-template-columns:1fr 1fr}
  .text-image-inner{grid-template-columns:1fr;gap:36px}
  .text-image-inner.img-left{direction:ltr}
  .cs-body-grid{grid-template-columns:1fr;gap:36px}
  .cs-sidebar{position:static}
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .audit-testi-grid{grid-template-columns:1fr!important}
  .audit-widget-grid{grid-template-columns:1fr!important;gap:40px!important}
  .audit-section{padding-left:20px!important;padding-right:20px!important;padding-top:56px!important;padding-bottom:56px!important}
  .audit-steps-grid{grid-template-columns:1fr!important;gap:24px!important}
  .audit-team-grid{grid-template-columns:1fr!important;gap:32px!important}
  .audit-stats-grid{grid-template-columns:1fr!important}
  #audit-tool-widget{padding-left:20px!important;padding-right:20px!important;padding-top:56px!important;padding-bottom:56px!important}
  .footer-top{grid-template-columns:1fr 1fr;gap:36px}
  .footer-news{grid-column:1 / -1}
  .gf-split{grid-template-columns:1fr;gap:36px}
  .testi-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  #main-nav{padding:0 20px}
  .nav-links,.nav-link--contact{display:none}
  .nav-right .nav-cta{display:none}
  .nav-burger{display:flex}
  .hero-full{padding:72px 20px 48px;min-height:80svh}
  .hero-bottom{flex-direction:column;align-items:flex-start;gap:20px;padding-top:20px}
  .page-hero{padding:80px 20px 40px}
  
  
  
  .pricing-section{padding:64px 20px}
  .pricing-grid{grid-template-columns:1fr}
  .process-section{padding:64px 20px}
  .process-grid{grid-template-columns:1fr 1fr;gap:2px}
  .testi-section{padding:56px 20px}
  .testi-grid{grid-template-columns:1fr}
  .blog-hero{padding:80px 20px 0}
  
  
  .blog-list-section{padding:0 20px 56px}
  
  
  .cs-archive-grid{grid-template-columns:1fr;padding:0 20px 56px}
  .cs-card:first-child{grid-column:span 1}
  .cs-body-section{padding:48px 20px}
  .faq-section{padding:56px 0}
  .faq-list{grid-template-columns:1fr}
  .gf-section{padding:56px 20px}
  .locations-grid{grid-template-columns:1fr}
  .loc-panel{border-right:none;border-bottom:1px solid var(--border);padding:36px 20px}
  .team-grid{grid-template-columns:1fr 1fr}
  .cta-band{padding:56px 20px}
  .wiaw-banner{flex-direction:column;align-items:flex-start;padding:20px}
  .work-scroll-track{padding:0 20px 28px;gap:8px}
  .work-drag-hint{padding:8px 20px 28px}
  .work-section-head{padding:48px 20px 24px;flex-direction:column;align-items:flex-start;gap:12px}
  .site-footer{padding:0 20px 28px}
  .footer-cta{padding:48px 0 36px}
  .footer-cta-line{gap:16px}
  .footer-top{grid-template-columns:1fr;gap:32px;padding:40px 0 36px}
  .footer-news{grid-column:auto}
  .footer-watermark{font-size:34vw;bottom:2%}
  .footer-bottom{flex-direction:column;text-align:center}
  .footer-address{text-align:center}
  .stats-band{padding:48px 20px}
  .stats-band-inner{grid-template-columns:1fr!important}
  
  
  .e404{padding:80px 20px}
  .e404-number{font-size:140px;right:-20px;top:auto;bottom:60px;transform:none}
  /* Full single-column stacking for all multi-column modules on phones */
  .hero-v2-inner{grid-template-columns:1fr;gap:32px}
  .offer-card-section{padding:56px 20px}
  .offer-card-inner{grid-template-columns:1fr;gap:36px}
  .offer-card{padding:26px}
  .offer-card-list{grid-template-columns:1fr}
  .text-image-section{padding:56px 20px}
  .text-image-inner{grid-template-columns:1fr!important;gap:32px}
  .text-image-inner.no-image .ti-body ol,.text-image-inner:not(:has(.ti-image)) .ti-body ol{grid-template-columns:1fr!important}
  .ti-body ol{grid-template-columns:1fr!important}
  .rte-content ol{grid-template-columns:1fr}
  .ct-inner{grid-template-columns:1fr;gap:36px}
  .work-feature-card{grid-template-columns:1fr}
  .work-grid{grid-template-columns:1fr}
  .stats-band-inner{grid-template-columns:1fr!important}
  .process-grid{grid-template-columns:1fr!important;gap:12px}
  .team-grid{grid-template-columns:1fr 1fr}
  .gform_wrapper .gform_fields{grid-template-columns:1fr!important;gap:20px!important}
  .service-form-body .gform_wrapper .gform_fields{grid-template-columns:1fr!important}
  .rich-text-section{padding:56px 20px}
  .at-finding{display:block}
  .nav-mega-grid{grid-template-columns:1fr!important;padding:20px}
  .cs-details-grid{grid-template-columns:1fr 1fr}
  /* Keep decorative gradient blobs from bleeding on narrow screens */
  .hero-glow,.hero-blob2,.hero-v2-glow,.cta-band-blob,.work-hero::before{width:320px!important;height:320px!important}
  .offer-card-section::before{width:80%!important;height:50%!important}
  .hero-full,.hero-v2,.work-hero,.offer-card-section,.cta-band,.stats-band,.services-list-section,.srv-section{overflow:hidden}
  .srv-section::before{width:340px!important;height:340px!important}
}

.reveal.in{opacity:1;transform:none}


/* ── MEGA MENU ──────────────────────────────────────────────────────────── */
.nav-mega{position:static}
.nav-mega-trigger{display:inline-flex;align-items:center;font-size:14px;font-weight:400;color:var(--dark);padding:6px 12px;border-radius:100px;cursor:pointer;background:none;border:none;font-family:var(--f);transition:color 0.15s}
.nav-mega-trigger:hover,.nav-mega.open .nav-mega-trigger{color:var(--orange)}
.nav-mega-trigger svg{transition:transform 0.2s}
.nav-mega.open .nav-mega-trigger svg{transform:rotate(180deg)}
.nav-mega-panel{position:absolute;top:100%;left:0;right:0;background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border);box-shadow:0 20px 50px rgba(26,22,20,0.1);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity 0.2s,transform 0.2s,visibility 0.2s;z-index:250}
.nav-mega.open .nav-mega-panel{opacity:1;visibility:visible;transform:none}
.nav-mega-grid{max-width:var(--max);margin:0 auto;padding:32px 40px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px}
.nav-mega-item{display:block;padding:18px 16px;border-radius:5px;text-decoration:none;transition:background 0.15s}
.nav-mega-item-img{width:100%;aspect-ratio:16/10;border-radius:5px;overflow:hidden;margin-bottom:14px;background:var(--cream-dk)}
.nav-mega-item-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s var(--ease)}
.nav-mega-item.has-img:hover .nav-mega-item-img img{transform:scale(1.04)}
.nav-mega-item:hover{background:var(--cream)}
.nav-mega-item-title{font-size:15px;font-weight:500;color:var(--dark);margin-bottom:8px;letter-spacing:-0.01em;display:flex;align-items:center;gap:8px}
.nav-mega-item:hover .nav-mega-item-title{color:var(--orange)}
.nav-mega-badge{font-size:8px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;background:var(--orange);color:var(--white);padding:2px 7px;border-radius:100px}
.nav-mega-item-for{font-size:12px;color:var(--mid);line-height:1.5;font-weight:300}
.nav-mega-foot{border-top:1px solid var(--border);background:var(--cream);padding:20px 40px}
.nav-mega-foot>div:first-child{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav-mega-foot{display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav-mega-foot-inner{max-width:var(--max);margin:0 auto;width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav-mega-foot-label{font-size:14px;font-weight:500;color:var(--dark);margin-bottom:2px}
.nav-mega-foot-text{font-size:13px;color:var(--mid);font-weight:300}
@media(max-width:900px){.nav-mega{display:none}}


/* ── CASE STUDY SINGLE (clean) ──────────────────────────────────────────── */






















.cs-results-inner{max-width:var(--max);margin:0 auto}
.cs-results-heading{font-size:clamp(22px,2.5vw,34px);font-weight:300;letter-spacing:-0.02em;margin-bottom:18px;color:var(--dark)}
.cs-results-body{font-size:16px;color:var(--mid);line-height:1.75;font-weight:300;margin-bottom:36px;max-width:640px}
.cs-results-grid{display:grid;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:5px;overflow:hidden}
.cs-result-block{background:var(--cream);padding:32px 28px}
.cs-result-num{font-size:clamp(36px,4vw,52px);font-weight:300;color:var(--dark);letter-spacing:-0.04em;margin-bottom:8px}
.cs-result-num em{color:var(--orange);font-style:normal}
.cs-result-lbl{font-size:13px;color:var(--mid);font-weight:300;line-height:1.5}
.cs-highlights{margin-top:4px}
.cs-highlight{padding:14px 0;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:14px;font-size:16px;font-weight:300;color:var(--dark)}
.cs-highlight-check{color:var(--orange);font-weight:600;flex-shrink:0}
.cs-details-section{padding:48px var(--gutter);background:var(--cream);border-top:1px solid var(--border)}
.cs-details-inner{max-width:var(--max);margin:0 auto}
.cs-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));border:1px solid var(--border);border-radius:5px;overflow:hidden}
.cs-detail{padding:20px 24px;border-right:1px solid var(--border)}
.cs-detail:last-child{border-right:none}
.cs-detail-label{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--mid);margin-bottom:6px}
.cs-detail-val{font-size:14px;font-weight:300;color:var(--dark)}
.cs-detail-cta{display:flex;align-items:center}
.cs-next-section{padding:64px var(--gutter);background:var(--cream-dk);border-top:1px solid var(--border)}
.cs-next-inner{max-width:var(--max);margin:0 auto}
.cs-next-label{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--mid);margin-bottom:24px}
.cs-next-link{display:inline-grid;grid-template-columns:200px 1fr;gap:32px;align-items:center;text-decoration:none;color:var(--dark);max-width:640px}
.cs-next-img{aspect-ratio:4/3;overflow:hidden;background:var(--border);border-radius:5px}
.cs-next-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.4s}
.cs-next-link:hover .cs-next-img img{transform:scale(1.05)}
.cs-next-sector{font-size:10px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}
.cs-next-title{font-size:clamp(20px,2.5vw,32px);font-weight:300;letter-spacing:-0.02em;margin-bottom:8px}
.cs-next-cta{font-size:14px;color:var(--orange)}
@media(max-width:768px){
  
  
  .cs-next-link{grid-template-columns:1fr;gap:16px}
  .cs-detail{border-right:none;border-bottom:1px solid var(--border)}
  .cs-img-2col,
  .cs-results-grid{grid-template-columns:1fr!important}
}

/* ── BLOG INDEX (high-end) ──────────────────────────────────────────────── */
.blog-hero{padding:110px var(--gutter) 0;background:var(--cream)}
.blog-hero-inner{max-width:var(--max);margin:0 auto}
.blog-hero h1{font-size:clamp(40px,6vw,82px);font-weight:300;letter-spacing:-0.04em;line-height:1.0;color:var(--dark);margin-bottom:20px}
.blog-hero h1 em{font-style:italic;color:var(--orange)}
.blog-hero-sub{font-size:18px;color:var(--mid);font-weight:300;line-height:1.65;max-width:560px}




.blog-featured-row:hover 





.blog-list-section{padding:72px var(--gutter) 88px;background:var(--cream)}
.blog-list-inner{max-width:var(--max);margin:0 auto}
.blog-list-head{font-size:10px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mid);padding-bottom:18px;border-bottom:1px solid var(--border);margin-bottom:8px}





.blog-list-row:hover 

.blog-list-row:hover 

/* ── SINGLE POST (long-form editorial) ──────────────────────────────────── */
.post-hero{padding:60px var(--gutter) 0;background:var(--cream)}
.post-hero-inner{max-width:760px;margin:0 auto}
.post-meta-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:36px;margin-top:100px;padding-top:20px}
.post-back{font-size:13px;color:var(--mid);text-decoration:none;transition:color 0.2s}
.post-back:hover{color:var(--orange)}
.post-cat-pill{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);border:1px solid rgba(232,104,48,0.35);background:rgba(232,104,48,0.05);padding:5px 14px;border-radius:100px}
.post-title{font-size:clamp(34px,5vw,58px);font-weight:300;letter-spacing:-0.03em;line-height:1.08;color:var(--dark);margin-bottom:24px}
.post-standfirst{font-size:21px;line-height:1.55;font-weight:300;color:var(--mid);margin-bottom:36px;letter-spacing:-0.01em}
.post-byline{display:flex;align-items:center;gap:13px;padding-bottom:48px}
.post-byline-av{width:44px;height:44px;border-radius:50%;background:var(--orange);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:600;flex-shrink:0;overflow:hidden}
.post-byline-av img{width:100%;height:100%;object-fit:cover;display:block}
.post-byline-name{font-size:14px;font-weight:600;color:var(--dark)}
.post-byline-date{font-size:13px;color:var(--mid);margin-top:1px}
.post-feature-img{margin:0 0 8px;background:var(--cream-dk)}
.post-feature-img img{width:100%;max-height:680px;object-fit:cover;display:block}
.post-feature-img figcaption{max-width:760px;margin:14px auto 0;padding:0 var(--gutter);font-size:13px;color:var(--mid);font-style:italic}

/* The reading column */
.post-body{padding:56px var(--gutter) 72px;background:var(--cream)}
.post-body-inner{max-width:720px;margin:0 auto;font-size:19px;line-height:1.85;font-weight:300;color:var(--dark);letter-spacing:-0.003em}
.post-body-inner > *:first-child{margin-top:0}
.post-body-inner p{margin-bottom:28px;color:#3a322c}
.post-body-inner h2{font-size:clamp(26px,3vw,36px);font-weight:300;letter-spacing:-0.02em;line-height:1.2;margin:56px 0 18px;color:var(--dark)}
.post-body-inner h3{font-size:23px;font-weight:500;letter-spacing:-0.01em;margin:40px 0 14px;color:var(--dark)}
.post-body-inner h2 em,.post-body-inner h3 em{font-style:italic;color:var(--orange)}
.post-body-inner a{color:var(--orange);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.post-body-inner a:hover{text-decoration-thickness:2px}
.post-body-inner ul,.post-body-inner ol{margin:0 0 28px;padding-left:24px}
.post-body-inner li{margin-bottom:12px;color:#3a322c}
.post-body-inner li::marker{color:var(--orange)}
.post-body-inner blockquote{margin:40px 0;padding:8px 0 8px 28px;border-left:3px solid var(--orange);font-size:24px;font-weight:300;font-style:italic;line-height:1.45;color:var(--dark);letter-spacing:-0.01em}
.post-body-inner blockquote p{margin-bottom:0;color:var(--dark)}
.post-body-inner img{width:100%;height:auto;border-radius:5px;margin:36px 0;display:block}
.post-body-inner figure{margin:36px 0}
.post-body-inner figcaption{font-size:13px;color:var(--mid);font-style:italic;text-align:center;margin-top:12px}
.post-body-inner hr{border:none;height:1px;background:var(--border);margin:48px auto;width:80px}
.post-body-inner pre{background:var(--dark);color:#f5f0e8;padding:24px;border-radius:5px;overflow-x:auto;font-size:14px;line-height:1.6;margin:32px 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.post-body-inner code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:0.88em;background:var(--cream-dk);padding:2px 7px;border-radius:5px;color:#9B4010}
.post-body-inner pre code{background:none;padding:0;color:inherit}
.post-body-inner strong{font-weight:600;color:var(--dark)}
/* Drop-cap on first paragraph for editorial feel */
.post-body-inner > p:first-of-type::first-letter{font-size:62px;font-weight:400;float:left;line-height:0.82;padding:6px 12px 0 0;color:var(--orange)}
/* Footnotes */
.post-body-inner sup a,.post-body-inner a.footnote{font-size:0.7em;color:var(--orange);text-decoration:none;font-weight:600;padding:0 1px}
.post-body-inner .footnotes,.post-body-inner ol.footnotes{margin-top:56px;padding-top:28px;border-top:1px solid var(--border);font-size:15px;color:var(--mid)}
.post-body-inner .footnotes li{margin-bottom:10px}

.post-footer{padding:0 var(--gutter) 64px;background:var(--cream)}
.post-footer-inner{max-width:720px;margin:0 auto;border-top:1px solid var(--border);padding-top:36px;display:flex;flex-direction:column;gap:24px}
.post-author-card{display:flex;align-items:flex-start;gap:16px}
.post-author-av{width:52px;height:52px;border-radius:50%;background:var(--cream-dk);border:1px solid var(--border);color:var(--orange);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600;flex-shrink:0;overflow:hidden}
.post-author-av img{width:100%;height:100%;object-fit:cover;display:block}
.post-author-role{font-size:13px;color:var(--orange);font-weight:400;margin-top:1px}
.post-author-name{font-size:15px;font-weight:600;color:var(--dark);margin-bottom:4px}
.post-author-bio{font-size:14px;color:var(--mid);line-height:1.6;font-weight:300}
.post-tags{display:flex;flex-wrap:wrap;gap:8px}
.post-tags a{font-size:12px;color:var(--mid);background:var(--cream-dk);border:1px solid var(--border);padding:5px 14px;border-radius:100px;text-decoration:none;transition:all 0.15s}
.post-tags a:hover{border-color:var(--orange);color:var(--orange)}

.post-related{padding:72px var(--gutter);background:var(--cream-dk);border-top:1px solid var(--border)}
.post-related-inner{max-width:var(--max);margin:0 auto}
.post-related-label{font-size:10px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--mid);margin-bottom:28px}
.post-related-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.post-related-card{text-decoration:none;color:var(--dark)}
.post-related-card-img{aspect-ratio:16/9;overflow:hidden;border-radius:5px;background:var(--cream-dk);margin-bottom:16px}
.post-related-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s}
.post-related-card:hover .post-related-card-img img{transform:scale(1.04)}
.post-related-card-cat{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}
.post-related-card-title{font-size:21px;font-weight:300;letter-spacing:-0.01em;line-height:1.25;color:var(--dark);transition:color 0.2s}
.post-related-card:hover .post-related-card-title{color:var(--orange)}

@media(max-width:768px){
  .blog-hero{padding:80px 20px 0}
  
  .blog-list-section{padding:48px 20px 64px}
  
  
  
  .post-hero{padding:50px 20px 0}
  .post-standfirst{font-size:18px}
  .post-body{padding:40px 20px 56px}
  .post-body-inner{font-size:17px}
  .post-body-inner > p:first-of-type::first-letter{font-size:48px}
  .post-related-grid{grid-template-columns:1fr;gap:28px}
}

/* ── BLOG INDEX v2 (filters + view toggle) ──────────────────────────────── */
.blog-hero{padding:110px var(--gutter) 8px;background:var(--cream)}
.blog-hero-inner{max-width:var(--max);margin:0 auto}
.blog-hero h1{font-size:clamp(40px,6vw,82px);font-weight:300;letter-spacing:-0.04em;line-height:1.0;color:var(--dark);margin-bottom:20px}
.blog-hero h1 em{font-style:italic;color:var(--orange)}
.blog-hero-sub{font-size:18px;color:var(--mid);font-weight:300;line-height:1.65;max-width:540px}

/* Featured — single clean card, image and body share one rounded frame */
.blog-featured-section{padding:40px var(--gutter) 0;background:var(--cream)}
.blog-featured{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.15fr 1fr;background:var(--white);border:1px solid var(--border);border-radius:5px;overflow:hidden;text-decoration:none;color:var(--dark);transition:box-shadow 0.25s,transform 0.2s}
.blog-featured:hover{box-shadow:0 20px 56px rgba(26,22,20,0.11);transform:translateY(-3px)}
.blog-featured-img{position:relative;overflow:hidden;background:var(--cream-dk);aspect-ratio:16/11}
.blog-featured-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s}
.blog-featured:hover .blog-featured-img img{transform:scale(1.03)}
.blog-featured-flag{position:absolute;top:18px;left:18px;background:var(--orange);color:var(--white);font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:5px 13px;border-radius:100px}
.blog-featured-body{padding:48px;display:flex;flex-direction:column;justify-content:center}
.blog-featured-cat{font-size:10px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--orange);margin-bottom:16px}
.blog-featured-title{font-size:clamp(26px,3.2vw,40px);font-weight:300;letter-spacing:-0.025em;line-height:1.12;color:var(--dark);margin-bottom:18px}
.blog-featured-exc{font-size:16px;color:var(--mid);line-height:1.65;font-weight:300;margin-bottom:24px}
.blog-featured-meta{font-size:11px;color:var(--mid);letter-spacing:0.06em;text-transform:uppercase;font-weight:600}

/* Controls bar */
.blog-controls{padding:40px var(--gutter) 0;background:var(--cream)}
.blog-controls-inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid var(--border)}
.blog-filters{display:flex;flex-wrap:wrap;gap:8px}
.blog-filter{font-family:var(--f);font-size:13px;font-weight:500;color:var(--mid);background:transparent;border:1.5px solid var(--border);border-radius:100px;padding:8px 18px;cursor:pointer;transition:all 0.18s;white-space:nowrap}
.blog-filter:hover{border-color:var(--dark);color:var(--dark)}
.blog-filter.active{background:var(--dark);color:var(--white);border-color:var(--dark)}
.blog-view-toggle{display:flex;gap:4px;background:var(--cream-dk);border:1px solid var(--border);border-radius:100px;padding:4px}
.blog-view-btn{display:flex;align-items:center;justify-content:center;width:36px;height:32px;border-radius:100px;color:var(--mid);background:transparent;border:none;cursor:pointer;transition:all 0.15s}
.blog-view-btn:hover{color:var(--dark)}
.blog-view-btn.active{background:var(--white);color:var(--orange);box-shadow:0 1px 4px rgba(0,0,0,0.08)}

/* Posts container */
.blog-list-section{padding:32px var(--gutter) 88px;background:var(--cream)}
.blog-list-inner{max-width:var(--max);margin:0 auto}

/* LIST VIEW */
.blog-list-inner[data-view="list"]{display:flex;flex-direction:column}
.blog-list-inner[data-view="list"] .blog-post-item{display:grid;grid-template-columns:88px 1fr 150px 32px;align-items:center;gap:28px;padding:24px 0;border-bottom:1px solid var(--border);text-decoration:none;color:var(--dark);transition:padding-left 0.2s var(--ease)}
.blog-list-inner[data-view="list"] .blog-post-item:hover{padding-left:10px}
.blog-list-inner[data-view="list"] .blog-post-thumb{width:88px;height:64px;border-radius:5px;overflow:hidden;background:var(--cream-dk)}
.blog-list-inner[data-view="list"] .blog-post-thumb img{width:100%;height:100%;object-fit:cover}
.blog-list-inner[data-view="list"] .blog-post-exc{display:none}
.blog-list-inner[data-view="list"] .blog-post-cat{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:6px}
.blog-list-inner[data-view="list"] .blog-post-title{font-size:clamp(17px,2vw,22px);font-weight:300;letter-spacing:-0.01em;line-height:1.25;transition:color 0.2s}
.blog-list-inner[data-view="list"] .blog-post-item:hover .blog-post-title{color:var(--orange)}
.blog-list-inner[data-view="list"] .blog-post-meta{display:flex;flex-direction:column;gap:3px;text-align:right;font-size:11px;color:var(--mid);letter-spacing:0.04em;text-transform:uppercase;font-weight:500}
.blog-list-inner[data-view="list"] .blog-post-arrow{font-size:18px;color:var(--orange);opacity:0;transform:translateX(-6px);transition:opacity 0.2s,transform 0.2s;text-align:right}
.blog-list-inner[data-view="list"] .blog-post-item:hover .blog-post-arrow{opacity:1;transform:none}

/* CARD VIEW */
.blog-list-inner[data-view="card"]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.blog-list-inner[data-view="card"] .blog-post-item{display:flex;flex-direction:column;text-decoration:none;color:var(--dark);background:var(--white);border:1px solid var(--border);border-radius:5px;overflow:hidden;transition:box-shadow 0.22s,transform 0.2s}
.blog-list-inner[data-view="card"] .blog-post-item:hover{box-shadow:0 14px 44px rgba(26,22,20,0.1);transform:translateY(-3px)}
.blog-list-inner[data-view="card"] .blog-post-thumb{aspect-ratio:16/10;overflow:hidden;background:var(--cream-dk)}
.blog-list-inner[data-view="card"] .blog-post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s}
.blog-list-inner[data-view="card"] .blog-post-item:hover .blog-post-thumb img{transform:scale(1.04)}
.blog-list-inner[data-view="card"] .blog-post-main{padding:24px 24px 8px;flex:1}
.blog-list-inner[data-view="card"] .blog-post-cat{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.blog-list-inner[data-view="card"] .blog-post-title{font-size:21px;font-weight:300;letter-spacing:-0.01em;line-height:1.25;margin-bottom:10px;transition:color 0.2s}
.blog-list-inner[data-view="card"] .blog-post-item:hover .blog-post-title{color:var(--orange)}
.blog-list-inner[data-view="card"] .blog-post-exc{font-size:14px;color:var(--mid);line-height:1.6;font-weight:300}
.blog-list-inner[data-view="card"] .blog-post-meta{padding:0 24px 22px;display:flex;gap:12px;font-size:11px;color:var(--mid);letter-spacing:0.04em;text-transform:uppercase;font-weight:500}
.blog-list-inner[data-view="card"] .blog-post-arrow{display:none}
.blog-empty{max-width:var(--max);margin:0 auto;padding:64px 0;text-align:center;color:var(--mid);font-size:16px;font-weight:300}

@media(max-width:900px){
  .blog-featured{grid-template-columns:1fr}
  .blog-list-inner[data-view="card"]{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .blog-hero{padding:80px 20px 8px}
  .blog-featured-section{padding:28px 20px 0}
  .blog-featured-body{padding:28px}
  .blog-controls{padding:28px 20px 0}
  .blog-list-section{padding:24px 20px 64px}
  .blog-list-inner[data-view="list"] .blog-post-item{grid-template-columns:72px 1fr;gap:16px;align-items:start}
  .blog-list-inner[data-view="list"] .blog-post-thumb{width:72px;height:72px}
  .blog-list-inner[data-view="list"] .blog-post-meta,.blog-list-inner[data-view="list"] .blog-post-arrow{display:none}
  .blog-list-inner[data-view="list"] .blog-post-exc{display:none}
  .blog-list-inner[data-view="list"] .blog-post-cat{margin-bottom:4px}
  .blog-list-inner[data-view="list"] .blog-post-title{font-size:17px;line-height:1.3}
  .blog-list-inner[data-view="card"]{grid-template-columns:1fr}
}



/* ── HERO: large faded Revo mark behind the video ──────────────────────── */
.hero-v2-media{position:relative}
.hero-v2-mark{position:absolute;width:62%;height:auto;aspect-ratio:1;top:-9%;right:-7%;opacity:0.12;z-index:0;pointer-events:none}
.hero-v2-media-frame{position:relative;z-index:2}

@media(max-width:900px){
  .hero-v2-mark{width:52%;top:-6%;right:-5%}
}

/* ── LATEST NEWS MODULE ─────────────────────────────────────────────────── */
.news-section{padding:88px var(--gutter);background:var(--cream-dk)}
.news-inner{max-width:var(--max);margin:0 auto}
.news-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:40px}
.news-title{font-size:clamp(26px,3.5vw,44px);font-weight:300;letter-spacing:-0.03em;line-height:1.1;color:var(--dark)}
.news-title em{font-style:italic;color:var(--orange)}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.news-card{display:flex;flex-direction:column;text-decoration:none;color:var(--dark);background:var(--white);border:1px solid var(--border);border-radius:5px;overflow:hidden;transition:box-shadow 0.22s,transform 0.2s}
.news-card:hover{box-shadow:0 14px 44px rgba(26,22,20,0.1);transform:translateY(-3px)}
.news-card-img{aspect-ratio:16/10;overflow:hidden;background:var(--cream-dk)}
.news-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s}
.news-card:hover .news-card-img img{transform:scale(1.04)}
.news-card-body{padding:24px;flex:1;display:flex;flex-direction:column}
.news-card-cat{font-size:10px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.news-card-title{font-size:20px;font-weight:300;letter-spacing:-0.01em;line-height:1.25;color:var(--dark);margin-bottom:16px;flex:1;transition:color 0.2s}
.news-card:hover .news-card-title{color:var(--orange)}
.news-card-meta{font-size:11px;color:var(--mid);letter-spacing:0.04em;text-transform:uppercase;font-weight:500}
@media(max-width:1000px){.news-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){
  .news-section{padding:56px 20px}
  .news-grid{grid-template-columns:1fr}
  .news-head{flex-direction:column;align-items:flex-start;gap:12px}
}

/* Work tile result line */
.work-tile-foot{align-items:flex-start}
.work-tile-foot-main{flex:1;min-width:0}
.work-tile-result{display:flex;align-items:baseline;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.wtr-num{font-size:24px;font-weight:300;color:var(--orange);letter-spacing:-0.03em;line-height:1;flex-shrink:0}
.wtr-lbl{font-size:12px;color:var(--mid);font-weight:400;line-height:1.4}

/* Work card logos — flow the brand onto the imagery */
.work-tile-media,.work-feature-media{position:relative}
.work-tile-logo{position:absolute;top:14px;left:14px;background:rgba(245,240,232,0.95);backdrop-filter:blur(6px);border-radius:5px;padding:8px 12px;display:flex;align-items:center;max-width:130px;box-shadow:0 2px 10px rgba(0,0,0,0.12)}
.work-tile-logo img{max-height:22px;max-width:106px;width:auto;object-fit:contain;display:block}
.work-feature-logo{position:absolute;top:20px;left:20px;background:rgba(245,240,232,0.95);backdrop-filter:blur(6px);border-radius:5px;padding:10px 16px;display:flex;align-items:center;max-width:170px;box-shadow:0 2px 14px rgba(0,0,0,0.14)}
.work-feature-logo img{max-height:28px;max-width:138px;width:auto;object-fit:contain;display:block}

/* ════════ CASE STUDY — refined modules ════════ */
/* Hero */
.cs-hero{padding:100px var(--gutter) 56px;background:var(--cream)}
.cs-hero--with-img{padding-bottom:0}
.cs-hero-inner{max-width:var(--max);margin:0 auto}



.cs-hero-head{max-width:860px}
.cs-hero-logo{display:inline-flex;align-items:center;justify-content:center;height:64px;min-width:64px;padding:0 20px;background:var(--white);border:1px solid var(--border);border-radius:5px;margin-bottom:28px;box-shadow:0 2px 16px rgba(26,22,20,0.05)}
.cs-hero-logo img{max-height:36px;max-width:170px;width:auto;object-fit:contain;display:block}
.cs-sector-tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--orange);margin-bottom:18px}
.cs-sector-dot{width:6px;height:6px;border-radius:50%;background:var(--orange)}
.cs-h1{font-size:clamp(38px,6vw,80px);font-weight:300;letter-spacing:-0.035em;line-height:1.02;color:var(--dark);margin-bottom:16px}
.cs-client{font-size:16px;color:var(--mid);font-weight:300}

/* Unified showcase: featured image with stats overlapping below */







.cs-stat{background:var(--dark);padding:36px 40px;position:relative;overflow:hidden}
.cs-stat:first-child{border-radius:5px 0 0 5px}
.cs-stat:last-child{border-radius:0 5px 5px 0}
.cs-showcase-stats[data-count="1"] .cs-stat{border-radius:5px}
.cs-stat::after{content:'';position:absolute;left:0;top:0;width:3px;height:100%;background:var(--orange);opacity:0;transition:opacity 0.3s}
.cs-stat:hover::after{opacity:1}
.cs-stat-num{font-size:clamp(38px,4.5vw,58px);font-weight:300;color:var(--white);letter-spacing:-0.04em;line-height:1;margin-bottom:8px}
.cs-stat-num em{color:var(--orange);font-style:normal}
.cs-stat-lbl{font-size:13px;color:rgba(255,255,255,0.55);font-weight:300;line-height:1.5}
/* When there's no featured image, the stats sit normally (no negative pull) */
.cs-showcase--no-img 

/* Quote — editorial, with logo */
.cs-quote-section{padding:80px var(--gutter);background:var(--cream-dk);border-top:1px solid var(--border)}
.cs-quote-inner{max-width:800px;margin:0 auto;text-align:center}
.cs-quote-mark{font-size:72px;line-height:0.5;color:var(--orange);margin-bottom:8px;font-weight:400}
.cs-quote-text{font-size:clamp(22px,3vw,34px);font-weight:300;font-style:italic;color:var(--dark);line-height:1.4;letter-spacing:-0.015em;margin:0 0 32px;border:none;padding:0}
.cs-quote-foot{display:inline-flex;align-items:center;gap:18px}
.cs-quote-logo{height:44px;display:flex;align-items:center;padding-right:18px;border-right:1px solid var(--border)}
.cs-quote-logo img{max-height:32px;max-width:120px;width:auto;object-fit:contain}
.cs-quote-author{text-align:left}
.cs-quote-author strong{display:block;font-size:14px;font-weight:600;color:var(--dark)}
.cs-quote-author span{font-size:13px;color:var(--mid)}

@media(max-width:768px){
  .cs-hero{padding:80px 20px 40px}
  
  .cs-showcase-stats[data-count="2"],
  .cs-stat{border-radius:0!important}
  .cs-stat:first-child{border-radius:5px 5px 0 0!important}
  .cs-stat:last-child{border-radius:0 0 5px 5px!important}
  .cs-quote-section{padding:56px 20px}
  .cs-quote-foot{flex-direction:column;gap:12px}
  .cs-quote-logo{border-right:none;border-bottom:1px solid var(--border);padding-right:0;padding-bottom:12px}
  .cs-quote-author{text-align:center}
}

/* Homepage work card logo */
.work-card{position:relative}
.work-card-logo{position:absolute;top:16px;left:16px;z-index:2;background:rgba(245,240,232,0.95);backdrop-filter:blur(6px);border-radius:5px;padding:8px 13px;display:flex;align-items:center;max-width:130px;box-shadow:0 2px 10px rgba(0,0,0,0.14)}
.work-card-logo img{max-height:22px;max-width:104px;width:auto;object-fit:contain;display:block}

/* ════════ CASE STUDY — showcase redesign ════════ */
/* Hero: title + bold intro on left, highlighted stat block on right */
.cs-hero{padding:100px var(--gutter) 56px;background:var(--cream)}
.cs-hero-inner{max-width:var(--max);margin:0 auto}


.cs-h1{font-size:clamp(40px,6vw,84px);font-weight:300;letter-spacing:-0.035em;line-height:1.0;color:var(--dark);margin-bottom:28px}

/* Highlighted stat block in hero */









.cs-sector-tag{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--orange);margin-bottom:20px}
.cs-sector-dot{width:6px;height:6px;border-radius:50%;background:var(--orange)}

/* Feature image — contained, rounded */
.cs-feature{padding:0 var(--gutter);background:var(--cream)}
.cs-feature-inner{max-width:var(--max);margin:0 auto}
.cs-feature-inner img{width:100%;max-height:680px;object-fit:cover;display:block;border-radius:5px}

/* Prose sections — two-column showcase with sticky label */
.cs-prose-section{padding:72px var(--gutter);background:var(--cream)}
.cs-prose-section + .cs-prose-section{padding-top:0}
.cs-prose-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:240px 1fr;gap:64px;align-items:start}
.cs-prose-aside{position:sticky;top:90px}
.cs-prose-label{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--dark);padding-top:8px;border-top:2px solid var(--orange)}
.cs-prose-label-dot{display:none}
.cs-prose-body{font-size:19px;line-height:1.75;font-weight:300;color:var(--dark);max-width:680px}
.cs-prose-body > *:first-child{margin-top:0}
.cs-prose-body p{margin-bottom:22px;color:#3a322c}
.cs-prose-body h2,.cs-prose-body h3{font-size:26px;font-weight:300;letter-spacing:-0.02em;margin:36px 0 14px;color:var(--dark)}
.cs-prose-body ul,.cs-prose-body ol{padding-left:22px;margin-bottom:22px}
.cs-prose-body li{margin-bottom:10px;color:#3a322c}
.cs-prose-body li::marker{color:var(--orange)}
.cs-prose-body strong{font-weight:600;color:var(--dark)}
.cs-prose-body a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}

/* Image sections — contained with rounded frames */
.cs-img-section{padding:24px var(--gutter);background:var(--cream)}
.cs-img-full{max-width:var(--max);margin:0 auto}
.cs-img-full img,.cs-img-full video{width:100%;max-height:720px;object-fit:cover;display:block;border-radius:5px}
.cs-img-grid{max-width:var(--max);margin:0 auto;display:grid;gap:16px}
.cs-img-2col{grid-template-columns:1fr 1fr}
.cs-img-3col{grid-template-columns:1fr 1fr 1fr}
.cs-img-cell{overflow:hidden;border-radius:5px;background:var(--cream-dk)}
.cs-img-cell img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3}
.cs-img-caption{max-width:var(--max);margin:14px auto 0;font-size:13px;color:var(--mid);font-style:italic}

/* Results grid — bold dark showcase */
.cs-results-inner{max-width:var(--max);margin:0 auto}
.cs-results-heading{font-size:clamp(24px,3vw,40px);font-weight:300;letter-spacing:-0.02em;margin-bottom:16px;color:var(--dark)}
.cs-results-body{font-size:17px;color:var(--mid);line-height:1.7;font-weight:300;margin-bottom:36px;max-width:640px}
.cs-results-grid{display:grid;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:5px;overflow:hidden}
.cs-result-block{background:var(--dark);padding:36px 32px}
.cs-result-num{font-size:clamp(36px,4vw,54px);font-weight:300;color:var(--orange);letter-spacing:-0.04em;line-height:1;margin-bottom:8px}
.cs-result-lbl{font-size:13px;color:rgba(255,255,255,0.6);font-weight:300;line-height:1.5}

/* Highlights */
.cs-highlights{max-width:680px}
.cs-highlight{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-bottom:1px solid var(--border);font-size:17px;font-weight:300;color:var(--dark)}
.cs-highlight-check{color:var(--orange);font-weight:700;flex-shrink:0;margin-top:2px}

@media(max-width:900px){
  
  
  
  
  .cs-prose-inner{grid-template-columns:1fr;gap:24px}
  .cs-prose-aside{position:static}
  .cs-prose-body{font-size:17px}
}
@media(max-width:768px){
  .cs-hero{padding:80px 20px 40px}
  .cs-prose-section{padding:48px 20px}
  .cs-img-2col,.cs-img-3col{grid-template-columns:1fr}
  .cs-results-grid{grid-template-columns:1fr!important}
  
}

/* Visit live site — green arrow */
.cs-visit-arrow{display:inline-block;color:var(--orange);margin-left:6px;vertical-align:middle;flex-shrink:0}
.cs-visit-btn{display:inline-flex;align-items:center;padding:0;border-radius:0;text-decoration:none;color:var(--orange);font-weight:500}
.cs-visit-btn:hover{background:transparent;color:var(--orange);text-decoration:underline;text-underline-offset:4px}
.cs-visit{display:inline-flex;align-items:center}

/* ── HERO: circular showreel badge ──────────────────────────────────────── */
.hero-v2-reel{position:absolute;top:-30px;right:32px;z-index:6;width:104px;height:104px}
.hero-v2-reel-text{position:absolute;top:0;left:0;width:104px;height:104px;transform-origin:52px 52px;transform-box:border-box;animation:reelSpin 14s linear infinite}
.hero-v2-reel-text text{font-size:8px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;fill:var(--orange)}
@keyframes reelSpin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.hero-v2-reel-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;width:54px;height:54px;border-radius:50%;background:var(--orange);color:var(--white);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px rgba(232,104,48,0.35)}
.hero-v2-reel-play svg{margin-left:2px}
.hero-v2-reel:hover .hero-v2-reel-text{animation-duration:6s}
@media(max-width:900px){
  .hero-v2-reel{width:88px;height:88px;top:-24px;right:18px}
  .hero-v2-reel-text{width:88px;height:88px;transform-origin:44px 44px}
  .hero-v2-reel-play{width:46px;height:46px}
}

/* Case study hero — compact, intro-led */
.cs-hero{padding:100px var(--gutter) 48px;background:var(--cream)}
.cs-hero-inner{max-width:var(--max);margin:0 auto}
.cs-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;flex-wrap:wrap;margin-bottom:24px}
.cs-hero-main{min-width:0;flex:1}
.cs-h1{font-size:clamp(40px,6vw,82px);font-weight:300;letter-spacing:-0.035em;line-height:1.0;color:var(--dark)}
.cs-hero-visit{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;margin-top:8px;font-size:14px;font-weight:600;color:var(--dark);border:1.5px solid var(--border);border-radius:100px;padding:11px 22px;text-decoration:none;transition:all 0.2s}
.cs-hero-visit:hover{border-color:var(--orange);color:var(--orange)}
.cs-hero-visit svg{color:var(--orange)}
.cs-intro{font-size:clamp(20px,2.4vw,28px);font-weight:500;line-height:1.45;color:var(--dark);letter-spacing:-0.015em;max-width:820px;margin-bottom:36px}
/* Compact inline stats row */
.cs-hero-stats{display:flex;flex-wrap:wrap;gap:48px;padding-top:28px;border-top:1px solid var(--border)}
.cs-hero-stat{display:flex;flex-direction:column}
.cs-hero-stat-num{font-size:clamp(28px,3vw,40px);font-weight:300;color:var(--orange);letter-spacing:-0.04em;line-height:1;margin-bottom:6px}
.cs-hero-stat-lbl{font-size:12px;font-weight:500;color:var(--mid);letter-spacing:0.02em;line-height:1.4;max-width:160px}
@media(max-width:768px){
  .cs-hero{padding:80px 20px 36px}
  .cs-hero-top{flex-direction:column;gap:16px}
  .cs-hero-stats{gap:28px}
  .cs-hero-stat{flex:1;min-width:120px}
}

/* ── SERVICES LIST (intro panel + numbered rows) ────────────────────────── */


/* Left intro */








/* Right rows */






a.srv-item:hover 

/* Expanded first row */






@media(max-width:1000px){
  
}
@media(max-width:768px){
  
  
  
  .srv-item-expand .srv-item-desc,
  
}

/* Services list — cursor-following featured image */




/* ── SERVICES LIST (hover reveals content; image follows behind text) ────── */
.srv-section{position:relative;overflow:hidden;padding:100px var(--gutter);background:var(--white)}
.srv-section::before{content:'';position:absolute;left:-10%;bottom:-20%;width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(232,104,48,0.28) 0%,rgba(232,104,48,0.12) 35%,rgba(232,104,48,0) 70%);filter:blur(40px);pointer-events:none;z-index:0}
.srv-grid{position:relative;z-index:2;max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:0.85fr 1.4fr;gap:80px;align-items:start}
/* Left intro */
.srv-intro{position:relative}
.srv-eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:15px;font-weight:400;color:var(--dark);margin-bottom:24px}
.srv-eyebrow-dot{width:10px;height:10px;border-radius:50%;background:var(--orange)}
.srv-heading{font-size:clamp(30px,3.6vw,46px);font-weight:300;letter-spacing:-0.03em;line-height:1.08;color:var(--dark);margin-bottom:32px;max-width:420px}
.srv-heading em{font-style:italic;color:var(--orange)}
.srv-sub{font-size:16px;color:var(--mid);font-weight:300;line-height:1.65;margin-bottom:28px;max-width:360px}
.srv-cta{display:inline-flex;align-items:center;background:var(--dark);color:var(--white);font-size:14px;font-weight:600;padding:13px 26px;border-radius:5px;text-decoration:none;transition:background 0.2s,transform 0.15s}
.srv-cta:hover{background:#3D3430;transform:translateY(-2px)}
/* Rows */
.srv-rows{display:flex;flex-direction:column}
.srv-item{position:relative;display:grid;grid-template-columns:64px 1fr 40px;align-items:start;gap:16px;padding:30px 0;border-bottom:1px solid var(--border);text-decoration:none;color:var(--dark)}
.srv-item:first-child{border-top:1px solid var(--border)}
.srv-item-num{font-size:15px;font-weight:400;color:var(--orange);letter-spacing:0.02em;padding-top:6px}
.srv-item-body{min-width:0}
.srv-item-name{display:inline-flex;align-items:center;gap:12px;font-size:clamp(24px,2.8vw,38px);font-weight:400;letter-spacing:-0.02em;line-height:1.05;color:var(--dark);transition:color 0.2s}
a.srv-item:hover .srv-item-name{color:var(--orange)}
.srv-badge{font-size:9px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;background:var(--orange);color:var(--white);padding:3px 9px;border-radius:100px;vertical-align:middle}
/* Description: hidden, smoothly revealed on hover */
.srv-item-desc{display:block;font-size:15px;color:var(--mid);font-weight:300;line-height:1.6;max-width:440px;max-height:0;opacity:0;overflow:hidden;transition:max-height 0.4s var(--ease),opacity 0.3s var(--ease),margin-top 0.4s var(--ease);margin-top:0}
.srv-item:hover .srv-item-desc{max-height:120px;opacity:1;margin-top:14px}
.srv-item-arrow{padding-top:8px;color:var(--orange);opacity:0;transform:translateX(-8px);transition:opacity 0.25s,transform 0.25s;text-align:right}
.srv-item:hover .srv-item-arrow{opacity:1;transform:none}
/* Cursor-following image — BEHIND the text, semi-transparent */
.srv-cursor-img{position:absolute;top:0;left:0;width:340px;height:240px;margin-left:-170px;margin-top:-120px;border-radius:5px;background-size:cover;background-position:center;background-repeat:no-repeat;pointer-events:none;z-index:1;opacity:0;transform:scale(0.9);transition:opacity 0.35s var(--ease),transform 0.35s var(--ease);box-shadow:0 20px 50px rgba(26,22,20,0.2)}
.srv-cursor-img.on{opacity:0.55;transform:scale(1)}
@media(max-width:1000px){
  .srv-grid{grid-template-columns:1fr;gap:48px}
}
@media(max-width:768px){
  .srv-section{padding:64px 20px}
  .srv-item{grid-template-columns:48px 1fr;gap:10px;padding:22px 0}
  .srv-item-arrow{display:none}
  /* Touch: show descriptions inline since there's no hover */
  .srv-item-desc{max-height:none;opacity:1;margin-top:12px}
  .srv-cursor-img{display:none}
}
@media(pointer:coarse){
  .srv-item-desc{max-height:none;opacity:1;margin-top:12px}
  .srv-cursor-img{display:none}
}

/* ── HIGH-END MICRO-INTERACTIONS ──────────────────────────────────────────
   Subtle, quick, GPU-friendly polish applied site-wide. */

/* Card hover lifts */
.work-tile{transition:transform 0.35s var(--ease)}
.work-tile:hover{transform:translateY(-4px)}
.work-tile .work-tile-media{overflow:hidden;border-radius:5px}
.work-tile .work-tile-media img{transition:transform 0.6s var(--ease)}
.work-tile:hover .work-tile-media img{transform:scale(1.04)}

.testi-block{transition:transform 0.35s var(--ease),box-shadow 0.35s var(--ease),border-color 0.35s var(--ease)}
.testi-block:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(26,22,20,0.07);border-color:var(--orange)}

.work-card img{transition:transform 0.7s var(--ease)}
.work-card:hover img{transform:scale(1.05)}

.faq-item:hover{box-shadow:0 6px 20px rgba(26,22,20,0.06)}

/* Pricing / offer cards subtle lift */
.pricing-card,.offer-card{transition:transform 0.35s var(--ease),box-shadow 0.35s var(--ease)}
.pricing-card:hover,.offer-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(26,22,20,0.08)}

/* Nav links smooth */
.nav-link,.nav-wp-menu li a{transition:color 0.2s var(--ease),opacity 0.2s var(--ease)}

/* Logo subtle scale on hover */
.nav-logo{transition:transform 0.3s var(--ease)}
.nav-logo:hover{transform:scale(1.03)}

/* Footer column links already nudge; refine timing */
.footer-col a{transition:color 0.2s var(--ease),transform 0.25s var(--ease)}

/* Images in text-image and case study sections: gentle zoom container */
.ti-image img,.cs-img-full img{transition:transform 0.7s var(--ease)}

/* Smooth focus-visible for accessibility without harsh outlines */
a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:3px}

/* Honour reduced motion across all the above */
@media(prefers-reduced-motion:reduce){
  .work-tile,.work-tile .work-tile-media img,.testi-block,.work-card img,
  .pricing-card,.offer-card,.nav-logo{transition:none!important;transform:none!important}
}

/* ── LEGAL PAGES ───────────────────────────────────────────────────────── */
.legal-hero{background:var(--cream);padding:120px var(--gutter) 56px}
.legal-hero-inner{max-width:var(--max);margin:0 auto}
.legal-hero .eyebrow{margin-bottom:20px}
.legal-title{font-size:clamp(36px,5vw,64px);font-weight:300;letter-spacing:-0.03em;line-height:1.05;color:var(--dark);margin-bottom:16px}
.legal-title em{font-style:italic;color:var(--orange)}
.legal-updated{font-size:13px;color:var(--mid);font-weight:300}
.legal-body{background:var(--cream);padding:24px var(--gutter) 72px}
.legal-body-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:240px minmax(0,720px);gap:64px;align-items:start}
/* Contents sidebar */
.legal-toc{position:sticky;top:120px}
.legal-toc-label{font-size:10px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--mid);margin-bottom:14px}
.legal-toc-list{display:flex;flex-direction:column;gap:2px}
.legal-toc-link{display:block;font-size:13px;font-weight:300;color:var(--mid);line-height:1.45;padding:6px 0 6px 14px;border-left:2px solid transparent;transition:color 0.2s var(--ease),border-color 0.2s var(--ease)}
.legal-toc-link:hover{color:var(--dark)}
.legal-toc-link.active{color:var(--dark);border-left-color:var(--orange)}
/* Reading column */
.legal-content{font-size:16px;line-height:1.8;font-weight:300;color:var(--mid)}
.legal-content > *:first-child{margin-top:0;padding-top:0;border-top:none}
.legal-content p{margin-bottom:22px}
.legal-content h2{font-size:clamp(24px,3vw,32px);font-weight:300;letter-spacing:-0.02em;line-height:1.2;color:var(--dark);margin:56px 0 18px;padding-top:32px;border-top:1px solid var(--border)}
.legal-content h2 em{font-style:italic;color:var(--orange)}
.legal-content h3{font-size:18px;font-weight:400;color:var(--dark);margin:36px 0 12px}
.legal-content a{color:var(--orange);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:text-decoration-thickness 0.15s var(--ease)}
.legal-content a:hover{color:var(--orange);text-decoration-thickness:2px}
.legal-content ul,.legal-content ol{margin:0 0 22px;padding-left:22px}
.legal-content li{margin-bottom:10px}
.legal-content li::marker{color:var(--orange)}
.legal-content strong{font-weight:600;color:var(--dark)}
.legal-content blockquote{margin:32px 0;padding:6px 0 6px 24px;border-left:3px solid var(--orange);font-style:italic;color:var(--dark)}
/* Lawful basis table (Privacy Policy) */
.legal-content table{width:100%;border-collapse:collapse;margin:28px 0;font-size:14px;line-height:1.6}
.legal-content th{font-size:13px;font-weight:600;color:var(--dark);text-align:left;padding:12px 20px 12px 0;border-bottom:1px solid var(--border)}
.legal-content td{padding:12px 20px 12px 0;border-bottom:1px solid var(--border);vertical-align:top}
/* Related row */
.legal-related{background:var(--cream);padding:0 var(--gutter) 88px}
.legal-related-inner{max-width:var(--max);margin:0 auto;border-top:1px solid var(--border);padding-top:28px}
.legal-related-label{font-size:10px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--mid);margin-bottom:14px}
.legal-related-links{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:18px}
.legal-related-link{font-size:14px;font-weight:500;color:var(--dark);transition:color 0.2s var(--ease)}
.legal-related-link:hover{color:var(--orange)}
.legal-related-contact{font-size:14px;color:var(--mid);font-weight:300}
.legal-related-contact a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}
/* Footer legal links row */
.footer-legal{display:flex;gap:18px;flex-wrap:wrap}
.footer-legal a{font-size:12px;color:rgba(255,255,255,0.45);transition:color 0.2s var(--ease)}
.footer-legal a:hover{color:var(--orange)}
@media(max-width:900px){
  .legal-body-inner{display:block}
  .legal-toc{display:none}
}
@media(max-width:680px){
  .legal-hero{padding:100px var(--gutter) 40px}
  .legal-content table{display:block;overflow-x:auto}
}

/* ── PARTNER HUB ───────────────────────────────────────────────────────── */
.pt-hero{position:relative;background:var(--dark);overflow:hidden;padding:150px var(--gutter) 88px}
.pt-hero::before{content:'';position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(232,104,48,0.22),transparent 70%);filter:blur(100px);top:-140px;right:-60px;pointer-events:none}
.pt-hero-inner{position:relative;z-index:1;max-width:var(--max);margin:0 auto}
.pt-hero .eyebrow{color:var(--white)}
.pt-hero-h1{font-size:clamp(38px,5.5vw,72px);font-weight:300;letter-spacing:-0.04em;line-height:1.02;color:var(--white);margin-bottom:26px;max-width:900px}
.pt-hero-h1 em{font-style:italic;color:var(--orange)}
.pt-hero-sub{font-size:18px;color:rgba(255,255,255,0.55);font-weight:300;line-height:1.65;max-width:560px;margin-bottom:34px}
.pt-hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
/* Track chooser */
.pt-chooser{background:var(--dark);padding:0 var(--gutter) 96px}
.pt-chooser-inner{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pt-choice{display:block;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.14);border-radius:5px;padding:36px 36px 32px;transition:border-color 0.25s var(--ease),transform 0.25s var(--ease),background 0.25s var(--ease)}
.pt-choice:hover{border-color:var(--orange);transform:translateY(-3px);background:rgba(255,255,255,0.06)}
.pt-choice-tag{display:inline-block;background:var(--orange);color:var(--white);font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:5px 13px;border-radius:100px;margin-bottom:18px}
.pt-choice h2{font-size:clamp(22px,2.6vw,32px);font-weight:300;letter-spacing:-0.02em;color:var(--white);margin-bottom:10px}
.pt-choice p{font-size:15px;color:rgba(255,255,255,0.55);font-weight:300;line-height:1.6;margin-bottom:20px}
.pt-choice p strong{color:var(--white);font-weight:500}
.pt-choice-cta{font-size:13px;font-weight:600;color:var(--orange)}
/* Why strip */
.pt-why{background:var(--cream);padding:88px var(--gutter)}
.pt-why-inner{max-width:var(--max);margin:0 auto}
.pt-h2{font-size:clamp(28px,3.8vw,48px);font-weight:300;letter-spacing:-0.03em;line-height:1.1;color:var(--dark);margin-bottom:36px}
.pt-h2 em{font-style:italic;color:var(--orange)}
.pt-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pt-why-item{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:26px 24px}
.pt-why-item h3{font-size:16px;font-weight:500;letter-spacing:-0.01em;color:var(--dark);margin-bottom:8px}
.pt-why-item p{font-size:14px;color:var(--mid);font-weight:300;line-height:1.6}
/* Track sections */
.pt-track{background:var(--cream);padding:88px var(--gutter);scroll-margin-top:90px}
.pt-track-alt{background:var(--cream-dk)}
.pt-track-inner{max-width:var(--max);margin:0 auto}
.pt-track-head{max-width:760px;margin-bottom:40px}
.pt-track-sub{font-size:16px;color:var(--mid);font-weight:300;line-height:1.7;margin-top:-14px}
.pt-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:26px}
.pt-step{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:28px 26px}
.pt-step-num{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:rgba(232,104,48,0.1);color:var(--orange);border-radius:5px;font-size:14px;font-weight:600;margin-bottom:16px}
.pt-step h3{font-size:16px;font-weight:500;letter-spacing:-0.01em;color:var(--dark);margin-bottom:8px}
.pt-step p{font-size:14px;color:var(--mid);font-weight:300;line-height:1.6}
.pt-bonus{display:flex;align-items:flex-start;gap:18px;background:#FEF2EB;border:1px solid #F8D5BB;border-radius:5px;padding:22px 26px;margin-bottom:22px;flex-wrap:wrap}
.pt-bonus-tag{flex-shrink:0;background:var(--orange);color:var(--white);font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:5px 13px;border-radius:100px;margin-top:2px}
.pt-bonus p{font-size:15px;color:#9B4010;font-weight:300;line-height:1.65;margin:0;flex:1;min-width:260px}
.pt-bonus p strong{font-weight:600}
.pt-suits{font-size:14px;color:var(--mid);font-weight:300;line-height:1.7;max-width:820px}
.pt-suits strong{color:var(--dark);font-weight:500}
/* White-label grid */
.pt-wl-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:28px}
.pt-wl-card{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:28px 26px}
.pt-wl-card h3{font-size:17px;font-weight:500;letter-spacing:-0.01em;color:var(--dark);margin-bottom:8px}
.pt-wl-card p{font-size:14px;color:var(--mid);font-weight:300;line-height:1.65}
.pt-wl-terms{max-width:820px;margin-bottom:30px}
.pt-wl-terms p{font-size:14px;color:var(--mid);font-weight:300;line-height:1.7;margin-bottom:12px}
.pt-wl-terms strong{color:var(--dark);font-weight:500}
/* Partner form (dark card) */
.pt-form-section{background:var(--cream);padding:24px var(--gutter) 88px;scroll-margin-top:90px}
.pt-form-card{max-width:var(--max);margin:0 auto;background:var(--dark);border-radius:5px;padding:56px;position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:24px 64px;align-items:start}
.pt-form-card::before{content:'';position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(232,104,48,0.16),transparent 70%);filter:blur(80px);top:-120px;right:-80px;pointer-events:none}
.pt-form-head{position:relative;z-index:1;margin-bottom:0;align-self:center}
.pt-eyebrow-dark{color:var(--white)}
.pt-form-head h2{font-size:clamp(24px,3vw,36px);font-weight:300;letter-spacing:-0.02em;color:var(--white);margin-bottom:10px}
.pt-form-head p{font-size:15px;color:rgba(255,255,255,0.55);font-weight:300;line-height:1.6}
.pt-form-card .gform_wrapper{position:relative;z-index:1}
/* Latest case study card in the form's left column */
.pt-cs-card{display:block;margin-top:30px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.14);border-radius:5px;overflow:hidden;transition:border-color 0.25s var(--ease),transform 0.25s var(--ease)}
.pt-cs-card:hover{border-color:var(--orange);transform:translateY(-2px)}
.pt-cs-img{aspect-ratio:16/9;overflow:hidden;background:rgba(255,255,255,0.06)}
.pt-cs-img img{width:100%;height:100%;object-fit:cover;display:block}
.pt-cs-body{padding:18px 20px 20px}
.pt-cs-tag{font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:8px}
.pt-cs-client{font-size:17px;font-weight:400;letter-spacing:-0.01em;color:var(--white);margin-bottom:6px}
.pt-cs-stat{font-size:13px;color:rgba(255,255,255,0.55);font-weight:300;margin-bottom:12px}
.pt-cs-stat span{font-size:22px;font-weight:300;color:var(--orange);letter-spacing:-0.02em;margin-right:7px}
.pt-cs-link{font-size:13px;font-weight:600;color:var(--orange)}
.pt-form-fallback{position:relative;z-index:1;font-size:15px;color:rgba(255,255,255,0.7);font-weight:300}
.pt-form-fallback a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}
/* GF inside the dark card — ID-scoped so these outrank plugin theme rules */
#partner-form .gform_wrapper input[type=text],#partner-form .gform_wrapper input[type=email],#partner-form .gform_wrapper input[type=url],#partner-form .gform_wrapper input[type=tel],#partner-form .gform_wrapper select,#partner-form .gform_wrapper textarea{background:rgba(255,255,255,0.04)!important;border:1px solid rgba(255,255,255,0.18)!important;color:var(--white)!important;border-radius:5px!important;padding:14px 18px!important;font-size:15px!important;line-height:1.4!important;min-height:0!important;width:100%!important;font-family:var(--f)!important}
#partner-form .gform_wrapper textarea{min-height:110px!important}
#partner-form .gform_wrapper select option{color:var(--dark)}
#partner-form .gform_wrapper input::placeholder,#partner-form .gform_wrapper textarea::placeholder{color:rgba(255,255,255,0.4)!important}
#partner-form .gform_wrapper input:focus,#partner-form .gform_wrapper select:focus,#partner-form .gform_wrapper textarea:focus{border-color:rgba(255,255,255,0.45)!important;outline:none!important}
#partner-form .gform_wrapper .gfield_label,#partner-form .gform_wrapper legend.gfield_label{display:block!important;font-size:12px!important;font-weight:400!important;color:rgba(255,255,255,0.6)!important;margin-bottom:6px!important;font-family:var(--f)!important}
#partner-form .gform_wrapper .gfield_required{color:var(--orange)!important}
/* Two-column field grid so the form fills the card instead of stacking tall */
#partner-form .gform_wrapper .gform_fields{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px 20px!important}
#partner-form .gform_wrapper .gfield{margin:0!important;min-width:0;grid-column:auto/span 1!important}
#partner-form .gform_wrapper .gfield--type-radio,#partner-form .gform_wrapper .gfield--type-textarea,#partner-form .gform_wrapper .gfield--width-full{grid-column:1/-1!important}
/* The I-want-to radio renders as two pill buttons */
#partner-form .gform_wrapper .gfield--type-radio .gfield_radio{display:flex!important;flex-direction:row!important;gap:10px!important;flex-wrap:wrap!important}
#partner-form .gform_wrapper .gfield--type-radio .gchoice{position:relative!important;margin:0!important;padding:0!important;border:none!important;background:transparent!important;flex:0 0 auto!important;width:auto!important}
#partner-form .gform_wrapper .gfield--type-radio input[type=radio]{appearance:none!important;-webkit-appearance:none!important;position:absolute!important;opacity:0!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;border:none!important;background:transparent!important;box-shadow:none!important;cursor:pointer}
#partner-form .gform_wrapper .gfield--type-radio label{display:inline-flex;align-items:center;padding:11px 22px;border:1px solid rgba(255,255,255,0.25);border-radius:100px;font-size:14px!important;font-weight:400;color:rgba(255,255,255,0.75)!important;cursor:pointer;transition:all 0.2s var(--ease);margin:0!important;font-family:var(--f)!important}
#partner-form .gform_wrapper .gfield--type-radio input[type=radio]:checked+label,#partner-form .gform_wrapper .gfield--type-radio .gchoice:has(input:checked) label{background:var(--orange);border-color:var(--orange);color:var(--white)!important}
#partner-form .gform_wrapper .gform_footer{margin:20px 0 0!important;padding:0!important}
#partner-form .gform_wrapper .gform_button{background:var(--orange)!important;color:var(--white)!important;border-radius:5px!important;padding:16px!important;font-size:16px!important;font-weight:600!important;width:100%!important;border:none!important;cursor:pointer!important;font-family:var(--f)!important;transition:background 0.15s!important}
#partner-form .gform_wrapper .gform_button:hover{background:#c85820!important}
#partner-form .gform_wrapper .gform_validation_errors{background:rgba(232,104,48,0.12)!important;border:1px solid var(--orange)!important;border-radius:5px!important;padding:14px 18px!important;margin-bottom:18px!important}
#partner-form .gform_wrapper .gform_validation_errors h2,#partner-form .gform_wrapper .validation_message{color:#FBD3BC!important;font-size:13px!important;font-family:var(--f)!important}
#partner-form .gform_wrapper .gform_confirmation_message{color:var(--white);font-size:16px;font-weight:300;line-height:1.7;position:relative;z-index:1}
@media(max-width:900px){
  .pt-chooser-inner{grid-template-columns:1fr}
  .pt-why-grid{grid-template-columns:1fr 1fr}
  .pt-steps{grid-template-columns:1fr}
  .pt-wl-grid{grid-template-columns:1fr}
  .pt-form-card{padding:34px 24px;grid-template-columns:1fr;gap:28px}
  .pt-form-head{align-self:start}
}
@media(max-width:680px){
  #partner-form .gform_wrapper .gform_fields{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  .pt-why-grid{grid-template-columns:1fr}
  .pt-hero{padding:130px var(--gutter) 64px}
}

/* ── WEBSITE IN A WEEK ─────────────────────────────────────────────────── */
.ww-hero{background:var(--cream);padding:130px var(--gutter) 78px;position:relative;overflow:hidden}
.ww-hero::before{content:'';position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(232,104,48,0.16),transparent 70%);filter:blur(90px);top:-140px;right:-60px;pointer-events:none}
.ww-hero-inner{max-width:var(--max);margin:0 auto;position:relative;z-index:1}
.ww-trust{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:30px}
.ww-trust span{font-size:12px;font-weight:500;color:var(--dark);border:1px solid var(--border);background:var(--white);border-radius:5px;padding:7px 14px}
.ww-h1{font-size:clamp(44px,7vw,96px);font-weight:300;letter-spacing:-0.04em;line-height:1;color:var(--dark);margin-bottom:24px;max-width:1000px}
@media(max-width:900px){.ww-h1 br{display:none}}
.ww-h1 em{font-style:italic;color:var(--orange)}
.ww-hero-body{font-size:18px;color:var(--mid);font-weight:300;line-height:1.7;max-width:640px;margin-bottom:34px}
.ww-hero-body p{margin-bottom:16px}
.ww-hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.ww-link-cta{font-size:14px;font-weight:600;color:var(--dark);transition:color 0.2s var(--ease)}
.ww-link-cta:hover{color:var(--orange)}
.ww-section{background:var(--cream);padding:88px var(--gutter)}
.ww-section--white{background:var(--white)}
/* Dark variant — used by The Problem for early contrast against the cream flow */
.ww-section--dark{background:var(--dark)}
.ww-section--dark .ww-h2{color:var(--white)}
.ww-section--dark .eyebrow{color:var(--white)}
.ww-section--dark .ww-problem-item{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.14);color:rgba(255,255,255,0.85)}
.ww-section--dark .ww-closer{color:var(--white);font-size:19px}
.ww-inner{max-width:var(--max);margin:0 auto}
.ww-h2{font-size:clamp(28px,4vw,48px);font-weight:300;letter-spacing:-0.03em;line-height:1.1;color:var(--dark);margin-bottom:22px;max-width:760px}
.ww-h2 em{font-style:italic;color:var(--orange)}
.ww-lede{font-size:17px;color:var(--mid);font-weight:300;line-height:1.7;max-width:680px;margin-bottom:36px}
.ww-closer{font-size:17px;color:var(--dark);font-weight:400;line-height:1.6;max-width:680px;margin-top:36px}
.ww-closer a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}
/* Problem */
.ww-problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.ww-problem-item{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:20px 22px;font-size:15px;font-weight:300;color:var(--dark);line-height:1.55}
.ww-section--white .ww-problem-item{background:var(--cream)}
/* Two-column body + cards */
.ww-cols{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start;margin-top:8px}
.ww-body{font-size:16px;color:var(--mid);font-weight:300;line-height:1.8}
.ww-body p{margin-bottom:20px}
.ww-steps{display:grid;gap:12px}
.ww-steps--row{grid-template-columns:repeat(3,1fr);margin-top:14px}
.ww-steps--four{grid-template-columns:repeat(2,1fr)}
.ww-step{background:var(--cream);border:1px solid var(--border);border-top:3px solid var(--orange);border-radius:5px;padding:24px 26px}
.ww-section--white .ww-step{background:var(--cream)}
.ww-section:not(.ww-section--white) .ww-step{background:var(--white)}
.ww-step-num{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:rgba(232,104,48,0.1);color:var(--orange);border-radius:5px;font-size:13px;font-weight:600;margin-bottom:14px}
.ww-step h3{font-size:17px;font-weight:400;color:var(--dark);margin-bottom:6px;letter-spacing:-0.01em}
.ww-step p{font-size:14px;color:var(--mid);font-weight:300;line-height:1.6}
/* Offer */
.ww-offer-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:start}
.ww-included{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ww-inc-item{background:var(--white);border:1px solid var(--border);border-radius:5px;padding:20px 22px;font-size:14px;font-weight:300;color:var(--mid);line-height:1.6}
.ww-inc-item strong{display:block;font-weight:500;color:var(--dark);font-size:15px;margin-bottom:4px}
.ww-price-card{background:var(--dark);border-radius:5px;padding:44px 40px;text-align:center;position:sticky;top:110px}
.ww-price-lead{font-size:14px;color:rgba(255,255,255,0.6);font-weight:300;margin-bottom:10px}
.ww-price{font-size:clamp(48px,5vw,68px);font-weight:300;letter-spacing:-0.04em;color:var(--orange);line-height:1;margin-bottom:8px}
.ww-price-note{font-size:13px;color:rgba(255,255,255,0.55);font-weight:300;margin-bottom:26px}
/* Module library points */
.ww-points{display:grid;gap:12px}
.ww-point{background:var(--cream);border:1px solid var(--border);border-top:3px solid var(--orange);border-radius:5px;padding:24px 26px}
.ww-point h3{font-size:16px;font-weight:500;color:var(--dark);margin-bottom:6px}
.ww-point p{font-size:14px;color:var(--mid);font-weight:300;line-height:1.6}
/* Process days — 3x2 card grid, same language as the step cards */
.ww-days{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.ww-day{background:var(--white);border:1px solid var(--border);border-top:3px solid var(--orange);border-radius:5px;padding:24px 26px}
.ww-day-tag{display:inline-flex;align-items:center;background:rgba(232,104,48,0.1);color:var(--orange);border-radius:5px;font-size:12px;font-weight:600;padding:6px 12px;white-space:nowrap;margin-bottom:14px}
.ww-day h3{font-size:16px;font-weight:500;color:var(--dark);margin-bottom:4px}
.ww-day p{font-size:14px;color:var(--mid);font-weight:300;line-height:1.6}
/* Fit — reuses .rte-content tick/X list styling */
.ww-fit{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.ww-fit-col > p{margin-bottom:14px;color:var(--dark)}
.ww-fit-col strong{font-weight:600}
/* Proof */
.ww-proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ww-proof-card{display:block;background:var(--white);border:1px solid var(--border);border-radius:5px;overflow:hidden;color:var(--dark);transition:box-shadow 0.25s var(--ease),transform 0.25s var(--ease)}
.ww-proof-card:hover{box-shadow:0 18px 48px rgba(26,22,20,0.12);transform:translateY(-3px)}
.ww-proof-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--cream-dk)}
.ww-proof-media > img{width:100%;height:100%;object-fit:cover;display:block}
.ww-proof-logo{position:absolute;top:14px;left:14px;background:rgba(245,240,232,0.95);border-radius:5px;padding:8px 12px;display:flex;align-items:center;max-width:150px}
.ww-proof-logo img{max-height:22px;max-width:120px;width:auto;object-fit:contain;display:block}
.ww-proof-body{padding:18px 20px}
.ww-proof-client{font-size:16px;font-weight:500;letter-spacing:-0.01em;margin-bottom:4px}
.ww-proof-stat{font-size:13px;color:var(--mid);font-weight:300}
.ww-proof-stat span{font-size:20px;font-weight:300;color:var(--orange);letter-spacing:-0.02em;margin-right:6px}
.ww-proof-cta{margin-top:28px}
/* Numbers — full-width ledger rows, not cards (5 items orphaned in a grid) */
.ww-numbers{border-top:1px solid var(--border);margin-top:10px}
.ww-num-item{display:grid;grid-template-columns:minmax(280px,460px) 1fr;gap:12px 40px;border-bottom:1px solid var(--border);padding:24px 0;font-size:15px;font-weight:300;color:var(--mid);line-height:1.6}
.ww-num-item strong{display:block;font-weight:500;color:var(--dark);font-size:17px;letter-spacing:-0.01em}
@media(max-width:680px){.ww-num-item{grid-template-columns:1fr;gap:6px}}
/* Form notes (inside service form left column) */
.ww-form-note{font-size:14px;color:var(--mid);font-weight:300;line-height:1.6;margin-bottom:12px}
.ww-form-note a{color:var(--orange);text-decoration:underline;text-underline-offset:3px}
.ww-utm-bridge{font-size:15px;line-height:1.6;color:var(--dark);background:rgba(232,104,48,.08);border-left:3px solid var(--orange);padding:12px 16px;border-radius:0 5px 5px 0;margin:0 0 18px}
/* Thank-you: while you wait */
.ww-wait-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ww-wait-card{display:block;background:var(--cream);border:1px solid var(--border);border-radius:5px;padding:26px 28px;transition:border-color 0.25s var(--ease),transform 0.25s var(--ease)}
.ww-wait-card:hover{border-color:var(--orange);transform:translateY(-2px)}
.ww-wait-card h3{font-size:16px;font-weight:500;color:var(--dark);margin-bottom:8px}
.ww-wait-card p{font-size:14px;color:var(--mid);font-weight:300;line-height:1.6}
@media(max-width:900px){
  .ww-cols{grid-template-columns:1fr;gap:36px}
  .ww-offer-grid{grid-template-columns:1fr;gap:28px}
  .ww-price-card{position:static}
  .ww-problem-grid{grid-template-columns:1fr 1fr}
  .ww-proof-grid{grid-template-columns:1fr}
  .ww-steps--row{grid-template-columns:1fr}
  .ww-days{grid-template-columns:1fr}
  .ww-wait-grid{grid-template-columns:1fr}
  .ww-fit{grid-template-columns:1fr}
  .ww-numbers{grid-template-columns:1fr}
}
@media(max-width:680px){
  .ww-hero{padding:104px var(--gutter) 48px}
  .ww-section{padding:64px var(--gutter)}
  .ww-problem-grid{grid-template-columns:1fr}
  .ww-included{grid-template-columns:1fr}
  .ww-day{grid-template-columns:1fr;gap:10px}
}

/* ── ENQUIRY FORM TAKEOVER ─────────────────────────────────────────────── */
#revo-form-takeover{position:fixed;inset:0;z-index:12000;background:var(--cream);overflow-y:auto;opacity:0;pointer-events:none;transition:opacity 0.25s var(--ease)}
#revo-form-takeover.open{opacity:1;pointer-events:auto}
.rft-bar{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;padding:16px var(--gutter);background:var(--cream);z-index:2;border-bottom:1px solid var(--border)}
.rft-label{font-size:13px;font-weight:600;color:var(--mid)}
.rft-close{font-family:var(--f);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--dark);background:var(--white);border:1px solid var(--border);border-radius:100px;padding:9px 18px;cursor:pointer;transition:border-color 0.2s var(--ease)}
.rft-close:hover{border-color:var(--dark)}
#revo-form-takeover .service-form-section{padding-top:48px}
body.rft-lock{overflow:hidden}

/* Calendly embed sections: tighter vertical rhythm — the embed carries its
   own internal whitespace above and below the booking card. */
/* Background is NOT forced here: the layout's Background dropdown controls it
   (a "Calendly grey" choice matches the embed canvas). Only spacing is fixed. */
.rich-text-section:has(iframe[src*="calendly.com"]){padding-top:32px;padding-bottom:0}

/* Visually hidden text for icon-only links (a11y + gives crawlers anchor text) */
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* WP classic caption wrappers carry an inline pixel width from the editor
   (e.g. width: 2560px on full-size images) — cap them to the column. */
.post-body-inner .wp-caption{max-width:100%!important;width:auto!important}
.post-body-inner figure{max-width:100%}

/* ── WIAW quick capture ──────────────────────────────────────────────────
   Two field form placed high on the Website in a Week page. Card language
   matches the step and point cards: 5px radius, 3px orange top rule. */
.ww-capture{background:var(--cream-dk)}
.ww-capture.ww-section--white{background:var(--white)}
.ww-capture-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:52px;align-items:center}
.ww-capture-text .ww-h2{margin-bottom:14px}
.ww-capture-body{font-size:16px;color:var(--mid);font-weight:300;line-height:1.7;max-width:520px}
.ww-capture-form{background:var(--white);border:1px solid var(--border);border-top:3px solid var(--orange);border-radius:5px;padding:30px 32px}
.ww-section--white .ww-capture-form{background:var(--cream)}
.ww-capture-note{font-size:15px;color:var(--mid);font-weight:300}
.ww-capture .gform_wrapper .gform_fields{gap:18px 20px!important}
@media(max-width:900px){
  .ww-capture-grid{grid-template-columns:1fr;gap:26px}
  .ww-capture-form{padding:24px 22px}
}

/* ── Website in a Week: tighter vertical rhythm ──────────────────────────
   Scoped to this template only so the homepage and every other page keep
   their original spacing. Paid traffic was scrolling 8.8 screens. */
.page-template-page-wiaw .ww-hero{padding:96px var(--gutter) 48px}
.page-template-page-wiaw .ww-section{padding:52px var(--gutter)}
.page-template-page-wiaw .ww-h2{margin-bottom:16px}
.page-template-page-wiaw .ww-lede{margin-bottom:22px}
.page-template-page-wiaw .ww-closer{margin-top:22px}
.page-template-page-wiaw .ww-cols{gap:44px}
.page-template-page-wiaw .ww-body p{margin-bottom:14px}
.page-template-page-wiaw .ww-problem-grid,
.page-template-page-wiaw .ww-days{margin-top:10px}
.page-template-page-wiaw .ww-problem-item{padding:15px 18px}
.page-template-page-wiaw .ww-step,
.page-template-page-wiaw .ww-point,
.page-template-page-wiaw .ww-day{padding:17px 20px}
.page-template-page-wiaw .ww-num-item{padding:17px 0}
.page-template-page-wiaw .ww-proof-body{padding:14px 16px}
.page-template-page-wiaw .ww-proof-cta{margin-top:20px}
/* The offer section is the tallest block on the page */
.page-template-page-wiaw .ww-offer-grid{gap:32px}
.page-template-page-wiaw .ww-included{gap:10px}
.page-template-page-wiaw .ww-inc-item{padding:14px 16px}
.page-template-page-wiaw .ww-price-card{padding:32px 28px}
.page-template-page-wiaw .ww-price-note{margin-bottom:20px}
/* The enquiry section is the second tallest */
.page-template-page-wiaw .contact-hero{padding:58px 0 52px}
.page-template-page-wiaw .ct-inner{gap:52px}
.page-template-page-wiaw .ct-heading{margin:0 0 14px}
.page-template-page-wiaw .ct-sub{margin:0 0 24px}
.page-template-page-wiaw .ct-support{margin-bottom:24px}
.page-template-page-wiaw .ct-support-label{margin-bottom:10px}
.page-template-page-wiaw .gform_wrapper .gform_fields{gap:18px 20px!important}
.page-template-page-wiaw .gform_wrapper .gfield--type-radio .gchoice,
.page-template-page-wiaw .gform_wrapper .ginput_container_radio li{padding:9px 16px!important}
.page-template-page-wiaw .gform_wrapper .gfield--type-radio .gfield_radio,
.page-template-page-wiaw .gform_wrapper .ginput_container_radio{gap:6px!important}
.page-template-page-wiaw .faq-section{padding:48px 0}
.page-template-page-wiaw .cta-band{padding:56px 40px}
@media(max-width:900px){
  .page-template-page-wiaw .ww-hero{padding:84px var(--gutter) 40px}
  .page-template-page-wiaw .ww-section{padding:40px var(--gutter)}
  .page-template-page-wiaw .contact-hero{padding:44px 0 40px}
  .page-template-page-wiaw .faq-section{padding:38px 0}
  .page-template-page-wiaw .cta-band{padding:44px 20px}
}
