
@font-face{font-family:'Inter';font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-latin.woff2) format('woff2');}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono-latin.woff2) format('woff2');}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin.woff2) format('woff2');}
:root {
  --ink:#0E1A24; --surface:#F4F8F9; --white:#FFFFFF;
  --violet:#0F5F73; --violet-lt:#17788F; --violet-bg:#E1F0F3; --violet-mid:#3A97AD;
  --mint:#EDB955; --mist:#DBE6EA; --mid:#4A606C; --stone:#15303C; --stone-lt:#23424F;
  --font-display:'Plus Jakarta Sans',sans-serif;
  --font-body:'Inter',sans-serif;
  --font-mono:'JetBrains Mono',monospace;
  --r-xs:6px; --r-sm:10px; --r-md:16px; --r-lg:20px; --r-xl:28px; --r-2xl:40px;
  --shadow-sm:0 1px 8px rgba(14,26,36,0.06);
  --shadow-card:0 4px 24px rgba(14,26,36,0.09);
  --shadow-lg:0 12px 48px rgba(14,26,36,0.14);
  --shadow-cta:0 8px 40px rgba(15,95,115,0.30);
  --shadow-violet:0 4px 20px rgba(15,95,115,0.22);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);background:var(--surface);color:var(--ink);line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.container{max-width:1120px;margin:0 auto;padding:0 28px;}
.section-pad{padding:88px 0;}
.section-pad-sm{padding:56px 0;}
.eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:0.13em;text-transform:uppercase;color:var(--violet);display:inline-block;}
.tag-chip{display:inline-flex;align-items:center;gap:5px;background:var(--violet-bg);color:var(--violet);font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:0.06em;padding:4px 10px;border-radius:40px;}
.section-label{text-align:center;max-width:580px;margin:0 auto 48px;}
.section-label .eyebrow{margin-bottom:12px;}
.section-headline{font-family:var(--font-display);font-size:clamp(24px,2.8vw,38px);font-weight:700;line-height:1.2;letter-spacing:-0.02em;color:var(--ink);margin-bottom:14px;}
.section-sub{color:var(--mid);font-size:16px;line-height:1.7;}
/* Buttons */
.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--violet);color:#fff;font-family:var(--font-body);font-weight:600;font-size:15px;padding:14px 26px;border-radius:var(--r-md);border:none;cursor:pointer;transition:background 0.2s,transform 0.15s,box-shadow 0.2s;box-shadow:var(--shadow-violet);text-decoration:none;white-space:nowrap;}
.btn-primary:hover{background:var(--violet-lt);transform:translateY(-2px);box-shadow:var(--shadow-cta);}
.btn-secondary{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--ink);font-family:var(--font-body);font-weight:600;font-size:15px;padding:13px 26px;border-radius:var(--r-md);border:1.5px solid var(--mist);cursor:pointer;transition:border-color 0.2s,color 0.2s,background 0.2s;text-decoration:none;white-space:nowrap;}
.btn-secondary:hover{border-color:var(--violet);color:var(--violet);background:var(--violet-bg);}
.btn-white{display:inline-flex;align-items:center;gap:8px;background:white;color:var(--violet);font-weight:600;font-size:15px;padding:14px 26px;border-radius:var(--r-md);border:none;cursor:pointer;transition:opacity 0.2s,transform 0.15s;text-decoration:none;white-space:nowrap;}
.btn-white:hover{opacity:0.92;transform:translateY(-1px);}
.btn-ghost-white{display:inline-flex;align-items:center;gap:8px;background:transparent;color:white;font-weight:600;font-size:15px;padding:13px 26px;border-radius:var(--r-md);border:1.5px solid rgba(255,255,255,0.35);cursor:pointer;transition:border-color 0.2s,background 0.2s;text-decoration:none;white-space:nowrap;}
.btn-ghost-white:hover{border-color:white;background:rgba(255,255,255,0.1);}
/* Nav */
nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(244,248,249,0.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(14,26,36,0.07);transition:box-shadow 0.2s;}
.nav-inner{max-width:1120px;margin:0 auto;padding:0 28px;height:68px;display:flex;align-items:center;justify-content:space-between;}
.nav-logo{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:18px;letter-spacing:-0.01em;color:var(--ink);}
.logo-mark{width:34px;height:34px;border-radius:9px;overflow:hidden;flex-shrink:0;}
.nav-links{display:flex;align-items:center;gap:26px;list-style:none;}
.nav-links a{font-size:14px;font-weight:500;color:var(--mid);transition:color 0.15s;}
.nav-links a:hover{color:var(--ink);}
.nav-links a.btn-primary,.nav-links a.btn-primary:hover{color:#fff;}
/* Mobile menu */
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;border:none;background:none;padding:6px;z-index:200;}
.hamburger span{width:22px;height:2px;background:var(--ink);display:block;border-radius:2px;transition:transform 0.3s,opacity 0.3s;}
.hamburger.active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hamburger.active span:nth-child(2){opacity:0;}
.hamburger.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{display:none;position:fixed;top:68px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--mist);padding:20px 28px 28px;z-index:99;box-shadow:0 8px 32px rgba(14,26,36,0.10);}
.mobile-menu.open{display:block;}
.mobile-menu ul{list-style:none;display:flex;flex-direction:column;gap:4px;margin-bottom:20px;}
.mobile-menu ul a{display:block;padding:12px 0;font-size:16px;font-weight:500;color:var(--ink);border-bottom:1px solid var(--mist);transition:color 0.15s;}
.mobile-menu ul a:hover{color:var(--violet);}
.mobile-cta{display:block;text-align:center;}
/* Hero */
.hero{padding:124px 0 76px;background:linear-gradient(155deg,#F4F8F9 50%,#DDEEF2 100%);position:relative;overflow:hidden;}
.orb{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0;}
.orb-1{width:480px;height:480px;background:rgba(15,95,115,0.09);top:-100px;right:-60px;}
.orb-2{width:320px;height:320px;background:rgba(237,185,85,0.07);bottom:-40px;left:40px;}
.orb-3{width:200px;height:200px;background:rgba(15,95,115,0.06);top:40%;left:30%;}
.hero-grid{display:grid;grid-template-columns:52fr 48fr;gap:52px;align-items:center;position:relative;z-index:1;}
.hero-eyebrow{margin-bottom:18px;}
.hero h1{font-family:var(--font-display);font-size:clamp(30px,3.6vw,50px);font-weight:700;line-height:1.15;letter-spacing:-0.02em;color:var(--ink);margin-bottom:22px;}
.hero h1 .accent{color:var(--violet);font-weight:800;}
.hero-sub{font-size:16px;color:var(--mid);line-height:1.75;max-width:440px;margin-bottom:34px;}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:36px;}
/* Hero visual */
.hero-visual{position:relative;padding-top:20px;padding-bottom:20px;}
.browser-mockup{background:var(--white);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);border:1px solid var(--mist);overflow:hidden;position:relative;z-index:2;}
.browser-bar{background:#EEF3F5;padding:10px 14px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--mist);}
.browser-dots{display:flex;gap:5px;}
.browser-dot{width:9px;height:9px;border-radius:50%;}
.dot-r{background:#FF5F57;} .dot-y{background:#FEBC2E;} .dot-g{background:#28C840;}
.browser-url{flex:1;background:white;border-radius:5px;padding:4px 10px;font-family:var(--font-mono);font-size:12px;color:var(--mid);border:1px solid var(--mist);}
.browser-content{background:#F8FAFB;}
.mock-site-nav{background:white;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #EEF3F5;}
.mock-logo-bar{display:flex;align-items:center;gap:6px;}
.mock-logo-dot{width:20px;height:20px;border-radius:5px;background:linear-gradient(135deg,var(--violet),var(--mint));}
.mock-logo-text{width:56px;height:8px;background:var(--ink);border-radius:3px;opacity:0.7;}
.mock-nav-links{display:flex;gap:8px;}
.mock-nav-link{width:28px;height:6px;background:var(--mist);border-radius:3px;}
.mock-nav-btn{width:46px;height:20px;background:var(--violet);border-radius:4px;opacity:0.85;}
.mock-hero-block{padding:20px 16px 14px;background:linear-gradient(135deg,#F2F8F9 0%,#EAF5F6 100%);}
.mock-hero-tag{width:70px;height:8px;background:var(--violet-bg);border-radius:3px;margin-bottom:8px;}
.mock-hero-h1{width:85%;height:11px;background:var(--ink);border-radius:3px;margin-bottom:6px;opacity:0.75;}
.mock-hero-h2{width:65%;height:11px;background:var(--ink);border-radius:3px;margin-bottom:12px;opacity:0.75;}
.mock-hero-p1{width:90%;height:6px;background:var(--mist);border-radius:3px;margin-bottom:4px;}
.mock-hero-p2{width:70%;height:6px;background:var(--mist);border-radius:3px;margin-bottom:14px;}
.mock-hero-btns{display:flex;gap:7px;}
.mock-btn-solid{width:70px;height:22px;background:var(--violet);border-radius:5px;opacity:0.85;}
.mock-btn-ghost{width:60px;height:22px;border:1.5px solid var(--mist);border-radius:5px;}
.mock-services-row{padding:14px 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.mock-service-tile{background:white;border-radius:7px;padding:10px;border:1px solid var(--mist);}
.mock-tile-icon{width:18px;height:18px;border-radius:4px;margin-bottom:6px;}
.mock-tile-h{width:65%;height:6px;border-radius:2px;background:var(--ink);opacity:0.6;margin-bottom:4px;}
.mock-tile-p{width:80%;height:4px;border-radius:2px;background:var(--mist);}
.mock-tile-p2{width:55%;height:4px;border-radius:2px;background:var(--mist);margin-top:3px;}
.phone-mockup{position:absolute;bottom:-10px;right:-20px;width:100px;background:var(--stone);border-radius:18px;padding:8px;box-shadow:var(--shadow-lg);z-index:4;border:2px solid rgba(255,255,255,0.15);}
.phone-screen{background:white;border-radius:12px;overflow:hidden;height:160px;}
.phone-notch{width:28px;height:6px;background:var(--stone);border-radius:3px;margin:6px auto 6px;}
.phone-content{padding:0 6px 6px;}
.phone-nav-bar{background:white;height:20px;display:flex;align-items:center;justify-content:space-between;padding:0 4px;border-bottom:1px solid #EEF3F5;margin-bottom:6px;}
.phone-logo{width:14px;height:14px;border-radius:3px;background:linear-gradient(135deg,var(--violet),var(--mint));}
.phone-menu-dots{display:flex;gap:2px;}
.phone-menu-dot{width:3px;height:3px;border-radius:50%;background:var(--mid);}
.phone-hero{padding:4px;}
.phone-hero-h{width:75%;height:5px;background:var(--ink);border-radius:2px;opacity:0.7;margin-bottom:3px;}
.phone-hero-h2{width:55%;height:5px;background:var(--ink);border-radius:2px;opacity:0.7;margin-bottom:6px;}
.phone-hero-p{width:90%;height:3px;background:var(--mist);border-radius:2px;margin-bottom:2px;}
.phone-hero-p2{width:65%;height:3px;background:var(--mist);border-radius:2px;margin-bottom:6px;}
.phone-btn{width:55px;height:14px;background:var(--violet);border-radius:3px;opacity:0.85;}
.phone-card{background:var(--surface);border-radius:5px;padding:5px;margin-top:6px;}
.phone-card-line{height:3px;background:var(--mist);border-radius:2px;margin-bottom:2px;}
.phone-card-line.short{width:55%;}
.float-card{position:absolute;background:white;border-radius:var(--r-md);padding:9px 13px;box-shadow:var(--shadow-card);border:1px solid var(--mist);display:flex;align-items:center;gap:8px;z-index:5;white-space:nowrap;}
.float-card-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.float-card-text{font-size:12px;font-weight:600;color:var(--ink);line-height:1.3;}
.float-card-sub{font-size:12px;color:var(--mid);}
.fc-1{top:12px;left:-24px;}
.fc-2{bottom:60px;left:-18px;}
.fc-3{top:50%;right:-24px;transform:translateY(-50%);}
.pulse-dot{width:7px;height:7px;border-radius:50%;animation:pulseDot 1.8s ease-in-out infinite;}
@keyframes pulseDot{0%,100%{opacity:1;transform:scale(1);}50%{opacity:0.35;transform:scale(0.65);}}
/* Compact trust bar (3 items only) */
.trust-bar{background:var(--white);border-top:1px solid var(--mist);border-bottom:1px solid var(--mist);padding:16px 0;}
.trust-inner{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:32px;}
.trust-item{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:500;color:var(--mid);}
.trust-icon-sq{width:28px;height:28px;border-radius:7px;background:var(--violet-bg);display:flex;align-items:center;justify-content:center;font-size:13px;}
/* Services (lightweight, no decorative illustration blocks) */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.service-card-lite{background:var(--white);border-radius:var(--r-xl);border:1px solid var(--mist);padding:30px 26px;display:flex;flex-direction:column;transition:box-shadow 0.25s,transform 0.25s,border-color 0.25s;}
.service-card-lite:hover{box-shadow:var(--shadow-card);transform:translateY(-4px);border-color:rgba(15,95,115,0.2);}
.service-icon{width:48px;height:48px;border-radius:var(--r-md);background:var(--violet-bg);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:16px;}
.service-name{font-family:var(--font-display);font-size:17px;font-weight:700;margin-bottom:8px;line-height:1.25;color:var(--ink);}
.service-desc{font-size:13.5px;color:var(--mid);line-height:1.6;margin-bottom:16px;}
.service-items{list-style:none;display:flex;flex-direction:column;gap:6px;margin-bottom:20px;}
.service-items li{font-size:13px;color:var(--mid);display:flex;align-items:flex-start;gap:7px;line-height:1.4;}
.service-items li::before{content:"✓";color:var(--violet);font-weight:700;flex-shrink:0;}
.service-link{font-size:13px;font-weight:600;color:var(--violet);display:inline-flex;align-items:center;gap:5px;transition:gap 0.15s;margin-top:auto;}
.service-link:hover{gap:9px;}
.addons-line{text-align:center;font-size:13.5px;color:var(--mid);margin-top:28px;}
.addons-line a{color:var(--violet);font-weight:600;}
/* Featured templates (compact gallery cards) */
.tpl-featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:32px;}
.tpl-card{background:var(--white);border-radius:var(--r-xl);border:1px solid var(--mist);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow 0.25s,transform 0.25s,border-color 0.25s;}
.tpl-card:hover{box-shadow:var(--shadow-card);transform:translateY(-4px);border-color:rgba(15,95,115,0.18);}
.tpl-shot{position:relative;width:100%;aspect-ratio:16/9;background:var(--violet-bg);overflow:hidden;}
.tpl-shot img{width:100%;height:100%;object-fit:cover;object-position:center center;}
.tpl-shot-fallback{position:absolute;inset:0;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;background:linear-gradient(135deg,var(--violet-bg) 0%,#EAF5F6 100%);}
.tpl-shot-fallback-code{font-family:var(--font-mono);font-size:15px;font-weight:700;color:var(--violet);margin-bottom:4px;}
.tpl-shot-fallback-name{font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--ink);margin-bottom:4px;}
.tpl-shot-fallback-sub{font-size:12px;color:var(--mid);}
.tpl-code-badge{position:absolute;top:12px;left:12px;background:var(--stone);color:#fff;font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:0.05em;padding:4px 10px;border-radius:40px;z-index:2;}
.tpl-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1;}
.tpl-name{font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:-0.01em;color:var(--ink);margin-bottom:6px;}
.tpl-desc{font-size:13.5px;color:var(--mid);line-height:1.6;margin-bottom:12px;}
.tpl-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px;}
.tpl-view-btn{margin-top:auto;}
.tpl-viewall-wrap{text-align:center;}
/* How it works */
.how-bg{background:var(--stone);color:white;}
.how-header{text-align:center;max-width:560px;margin:0 auto 56px;}
.how-header .eyebrow{color:var(--mint);}
.how-header .section-headline{color:white;}
.how-header .section-sub{color:rgba(255,255,255,0.58);}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);position:relative;gap:0;}
.steps-grid::before{content:'';position:absolute;top:30px;left:13%;right:13%;height:1px;background:linear-gradient(90deg,transparent,rgba(15,95,115,0.55),rgba(237,185,85,0.55),transparent);}
.step{padding:0 20px;text-align:center;position:relative;}
.step-num{width:60px;height:60px;border-radius:50%;border:1.5px solid rgba(15,95,115,0.45);background:rgba(15,95,115,0.15);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;position:relative;z-index:1;}
.step-num span{font-family:var(--font-display);font-size:18px;font-weight:700;color:#8FD0DE;}
.step-title{font-family:var(--font-display);font-size:14.5px;font-weight:700;color:white;margin-bottom:9px;}
.step-body{font-size:12.5px;color:rgba(255,255,255,0.52);line-height:1.65;}
/* Pricing */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start;}
.price-card{background:var(--white);border-radius:var(--r-xl);padding:32px 28px;border:1px solid var(--mist);position:relative;transition:box-shadow 0.2s,transform 0.2s;display:flex;flex-direction:column;}
.price-card:hover{box-shadow:var(--shadow-card);transform:translateY(-3px);}
.price-card.popular{background:var(--violet);border-color:var(--violet);color:white;transform:scale(1.03);box-shadow:var(--shadow-cta);}
.price-card.popular:hover{transform:scale(1.03) translateY(-3px);}
.popular-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--mint);color:var(--ink);font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:0.08em;padding:4px 14px;border-radius:40px;white-space:nowrap;}
.price-tier{font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:0;margin-bottom:6px;}
.price-desc{font-size:13px;color:var(--mid);margin-bottom:22px;line-height:1.55;}
.price-card.popular .price-desc{color:rgba(255,255,255,0.84);}
.price-amount{margin-bottom:22px;}
.price-from{font-size:12px;color:var(--mid);font-family:var(--font-mono);letter-spacing:0.06em;text-transform:uppercase;display:block;margin-bottom:3px;}
.price-card.popular .price-from{color:rgba(255,255,255,0.52);}
.price-currency{font-size:17px;font-weight:700;color:var(--violet);vertical-align:top;line-height:1.5;}
.price-card.popular .price-currency{color:#CFEFF5;}
.price-number{font-family:var(--font-display);font-size:42px;font-weight:700;line-height:1;letter-spacing:-0.025em;}
.price-period{font-size:12px;color:var(--mid);margin-top:4px;}
.price-card.popular .price-period{color:rgba(255,255,255,0.58);}
.price-features{list-style:none;display:flex;flex-direction:column;gap:9px;margin-bottom:22px;flex:1;}
.price-features li{font-size:13px;display:flex;align-items:flex-start;gap:8px;line-height:1.4;}
.price-card:not(.popular) .price-features li{color:var(--mid);}
.price-card.popular .price-features li{color:rgba(255,255,255,0.85);}
.feat-check{color:var(--mint);font-size:12px;margin-top:2px;flex-shrink:0;}
.price-card:not(.popular) .feat-check{color:var(--violet);}
.price-btn-alt{display:block;width:100%;text-align:center;background:transparent;color:var(--violet);font-weight:600;font-size:14px;padding:12px;border-radius:var(--r-md);border:1.5px solid var(--violet-bg);cursor:pointer;transition:background 0.2s,border-color 0.2s;text-decoration:none;}
.price-btn-alt:hover{background:var(--violet-bg);border-color:rgba(15,95,115,0.3);}
.price-btn-main{display:block;width:100%;text-align:center;background:white;color:var(--violet);font-weight:600;font-size:14px;padding:12px;border-radius:var(--r-md);border:none;cursor:pointer;transition:opacity 0.2s;text-decoration:none;}
.price-btn-main:hover{opacity:0.9;}
.pricing-disclaimer{text-align:center;margin-top:26px;font-size:12.5px;color:var(--mid);opacity:0.8;max-width:640px;margin-left:auto;margin-right:auto;line-height:1.6;}
/* FAQ */
.faq-wrap{max-width:700px;margin:0 auto;}
.faq-item{background:var(--white);border:1px solid var(--mist);border-radius:var(--r-lg);margin-bottom:10px;overflow:hidden;transition:border-color 0.2s;}
.faq-item.open{border-color:rgba(15,95,115,0.2);}
.faq-question{width:100%;background:none;border:none;padding:20px 24px;text-align:left;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-family:var(--font-body);font-weight:600;font-size:14px;color:var(--ink);gap:16px;transition:color 0.15s;line-height:1.45;}
.faq-question:hover{color:var(--violet);}
.faq-icon{font-size:18px;color:var(--violet);flex-shrink:0;transition:transform 0.25s;}
.faq-answer{padding:0 24px;max-height:0;overflow:hidden;transition:max-height 0.35s ease,padding 0.3s ease;font-size:13.5px;color:var(--mid);line-height:1.72;}
.faq-item.open .faq-answer{max-height:240px;padding-bottom:22px;}
.faq-item.open .faq-icon{transform:rotate(45deg);}
/* Contact / inquiry form */
.enquiry-form-wrap{background:var(--white);border-radius:var(--r-xl);border:1px solid var(--mist);padding:36px;box-shadow:var(--shadow-card);max-width:640px;margin:0 auto;}
.enquiry-confirm{display:none;background:var(--violet-bg);color:var(--violet);border-radius:var(--r-md);padding:12px 16px;font-size:13.5px;font-weight:600;margin-bottom:20px;}
.enquiry-confirm.show{display:block;}
.form-row{margin-bottom:18px;}
.form-row label{display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:7px;}
.form-row input,.form-row select,.form-row textarea{width:100%;font-family:var(--font-body);font-size:14px;color:var(--ink);background:var(--surface);border:1.5px solid var(--mist);border-radius:var(--r-sm);padding:12px 14px;transition:border-color 0.2s;}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:var(--violet);}
.form-row textarea{resize:vertical;min-height:110px;}
.form-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-submit-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:8px;}
.form-submit-row .btn-primary{border:none;}
.form-submit-row .btn-primary:disabled{opacity:0.65;cursor:wait;}
.form-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.form-status{display:none;border-radius:var(--r-md);padding:14px 16px;font-size:14px;line-height:1.6;margin-top:16px;}
.form-status.show{display:block;}
.form-status.success{background:var(--violet-bg);color:var(--violet);font-weight:600;}
.form-status.error{background:#FDECEC;color:#9B2C2C;}
.form-status a{color:inherit;text-decoration:underline;font-weight:600;}
/* Footer */
footer{background:var(--ink);color:rgba(255,255,255,0.55);padding:56px 0 28px;margin-top:0;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:44px;}
.footer-brand .nav-logo{color:white;margin-bottom:14px;}
.footer-tagline{font-size:13px;line-height:1.65;max-width:255px;color:rgba(255,255,255,0.45);}
.footer-col-title{font-family:var(--font-display);font-size:12px;font-weight:700;color:white;margin-bottom:14px;letter-spacing:0.06em;text-transform:uppercase;}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:9px;}
.footer-links a{font-size:13px;color:rgba(255,255,255,0.47);transition:color 0.15s;}
.footer-links a:hover{color:white;}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.07);padding-top:22px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.footer-bottom p{font-size:12px;color:rgba(255,255,255,0.3);}
/* Responsive */
@media(min-width:961px)and (max-width:1200px){
  .hero h1{font-size:clamp(26px,3.2vw,44px);}
  .hero-grid{gap:36px;}
  .services-grid{gap:14px;}
  .phone-mockup{right:-8px;width:88px;}
  .fc-1{left:-10px;} .fc-3{right:-8px;}
}
@media(max-width:960px){
  .hero-grid{grid-template-columns:1fr;gap:48px;}
  .hero-visual{max-width:500px;margin:0 auto;}
  .fc-1{left:8px;top:8px;} .fc-2{left:8px;} .fc-3{right:8px;}
  .phone-mockup{right:0;}
  .services-grid{grid-template-columns:repeat(2,1fr);}
  .tpl-featured-grid{grid-template-columns:repeat(2,1fr);}
  .steps-grid{grid-template-columns:repeat(2,1fr);gap:32px;}
  .steps-grid::before{display:none;}
  .pricing-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto;}
  .price-card.popular{transform:scale(1);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .nav-links{display:none;}
  .hamburger{display:flex;}
}
@media(max-width:640px){
  .services-grid{grid-template-columns:1fr;}
  .tpl-featured-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .trust-inner{gap:14px;}
  .hero{padding:110px 0 64px;}
  .hero-visual .fc-1,.hero-visual .fc-2,.hero-visual .fc-3,.phone-mockup{display:none;}
  .section-pad{padding:64px 0;}
  .form-two-col{grid-template-columns:1fr;}
  .enquiry-form-wrap{padding:26px 22px;}
}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:translateY(0);}}
.fade-up{animation:fadeUp 0.6s ease both;}
.fade-up-2{animation:fadeUp 0.6s 0.1s ease both;}
.fade-up-3{animation:fadeUp 0.6s 0.2s ease both;}
@keyframes floatY{0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);}}
.float-anim{animation:floatY 4s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){.fade-up,.fade-up-2,.fade-up-3,.float-anim{animation:none;}.pulse-dot{animation:none;}}
/* ===== Preview additions (packages, care, static strip, about, fit) ===== */
.pricing-grid.four{grid-template-columns:repeat(4,1fr);gap:16px;}
.pricing-grid.four .price-card{padding:30px 22px;}
.pricing-grid.four .price-number{font-size:38px;}
.pricing-grid.three{grid-template-columns:repeat(3,1fr);}
.price-note{font-size:12px;line-height:1.55;color:var(--mid);background:var(--violet-bg);border-radius:var(--r-sm);padding:10px 12px;margin:-6px 0 18px;}
.price-card.popular .price-note{background:rgba(255,255,255,0.12);color:rgba(255,255,255,0.85);}
.price-billing{font-size:12px;color:var(--mid);margin-top:6px;line-height:1.5;}
.price-card.popular .price-billing{color:rgba(255,255,255,0.72);}
.price-per{font-size:14px;font-weight:600;color:var(--mid);}
.price-card.popular .price-per{color:rgba(255,255,255,0.7);}
.pricing-notes{max-width:820px;margin:30px auto 0;display:grid;gap:10px;}
.pricing-notes p{font-size:13px;color:var(--mid);line-height:1.65;text-align:center;}
.pricing-notes strong{color:var(--ink);}
.fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:900px;margin:0 auto 44px;}
.fit-card{background:var(--white);border:1px solid var(--mist);border-radius:var(--r-xl);padding:26px 26px 24px;}
.fit-card.yes{border-color:rgba(237,185,85,0.35);box-shadow:var(--shadow-sm);}
.fit-title{font-family:var(--font-display);font-size:16px;font-weight:700;margin-bottom:8px;display:flex;align-items:center;gap:8px;}
.fit-card p{font-size:13.5px;color:var(--mid);line-height:1.7;}
.fit-link{display:inline-block;margin-top:10px;font-size:13px;font-weight:600;color:var(--violet);}
.fit-head{text-align:center;margin:0 auto 18px;}
.fit-head h2,.fit-head h3{font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:-0.01em;}
.static-strip{background:var(--white);border-top:1px solid var(--mist);border-bottom:1px solid var(--mist);padding:56px 0;}
.static-inner{display:grid;grid-template-columns:1.1fr 1.4fr;gap:44px;align-items:center;}
.static-inner h2{font-family:var(--font-display);font-size:clamp(22px,2.4vw,30px);font-weight:700;letter-spacing:-0.02em;line-height:1.2;margin:10px 0 12px;}
.static-inner>div>p{font-size:14.5px;color:var(--mid);line-height:1.7;}
.static-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.static-point{background:var(--surface);border:1px solid var(--mist);border-radius:var(--r-lg);padding:18px 16px;}
.static-point .ic{font-size:20px;margin-bottom:8px;}
.static-point strong{display:block;font-family:var(--font-display);font-size:14px;margin-bottom:4px;}
.static-point span{font-size:12.5px;color:var(--mid);line-height:1.55;display:block;}
.care-foot{text-align:center;font-size:12.5px;color:var(--mid);max-width:720px;margin:26px auto 0;line-height:1.65;}
.about-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:56px;align-items:center;}
.about-visual{border-radius:var(--r-2xl);background:linear-gradient(140deg,var(--stone) 0%,var(--violet) 60%,#17788F 100%);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:var(--shadow-cta);}
.about-visual svg{width:42%;height:auto;filter:drop-shadow(0 12px 30px rgba(0,0,0,0.25));}
.about-visual .glow{position:absolute;width:60%;height:60%;border-radius:50%;background:rgba(237,185,85,0.25);filter:blur(60px);right:-10%;top:-10%;}
.about-text .section-headline{margin-top:12px;}
.about-text p{font-size:15.5px;color:var(--mid);line-height:1.8;margin-bottom:14px;}
.about-points{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.faq-item.open .faq-answer{max-height:700px;}
@media(max-width:1100px){
  .pricing-grid.four{grid-template-columns:repeat(2,1fr);max-width:760px;margin:0 auto;gap:22px;}
  .pricing-grid.four .price-card.popular{transform:scale(1);}
}
@media(max-width:960px){
  .pricing-grid.three{grid-template-columns:1fr;max-width:400px;margin:0 auto;}
  .static-inner{grid-template-columns:1fr;gap:26px;}
  .about-grid{grid-template-columns:1fr;gap:32px;}
  .about-visual{max-width:460px;}
}
@media(max-width:640px){
  .pricing-grid.four{grid-template-columns:1fr;max-width:400px;}
  .fit-grid{grid-template-columns:1fr;}
  .static-points{grid-template-columns:1fr;}
}

/* QA 2026-10-28 additions */
.hero-who{font-size:13.5px;color:var(--mid);max-width:440px;line-height:1.6;margin-top:-12px;}
.footer-bottom a{color:rgba(255,255,255,0.72);text-decoration:underline;}
.footer-bottom a:hover{color:#fff;}
.form-consent{font-size:12.5px;color:var(--mid);margin-top:14px;line-height:1.6;}
.form-consent a{color:var(--violet);font-weight:600;text-decoration:underline;}
.legal{max-width:760px;margin:0 auto;}
.legal h2{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:-0.01em;color:var(--ink);margin:40px 0 12px;}
.legal h2:first-child{margin-top:0;}
.legal p,.legal li{font-size:15.5px;line-height:1.75;color:var(--stone);}
.legal p+p{margin-top:12px;}
.legal ul{margin:10px 0 0 20px;display:grid;gap:8px;}
.legal a{color:var(--violet);font-weight:600;text-decoration:underline;}
.legal .updated{font-size:13px;color:var(--mid);margin-bottom:28px;}

.price-card.popular .price-from{color:rgba(255,255,255,0.88);}
.price-card.popular .price-period{color:rgba(255,255,255,0.88);}
.pricing-disclaimer{opacity:1;color:var(--mid);}
.footer-bottom p{color:rgba(255,255,255,0.62);}
.footer-tagline{color:rgba(255,255,255,0.62);}
.footer-links a{color:rgba(255,255,255,0.66);}
.tpl-disclaimer{opacity:1;color:var(--mid);}

/* ===== 2026-10-30 additions: device mockups, why strip, Agate photo ===== */
.devices-section{padding:72px 0 56px;background:linear-gradient(180deg,var(--surface) 0%,var(--violet-bg) 100%);overflow:hidden;}
.device-stage{position:relative;max-width:900px;margin:0 auto;padding:0 0 28px;}
.laptop{display:block;width:76%;margin:0 auto 0 0;text-decoration:none;}
.laptop-screen{background:#101E29;border:10px solid #101E29;border-bottom-width:12px;border-radius:14px 14px 4px 4px;box-shadow:0 30px 60px rgba(21,48,60,0.28);overflow:hidden;aspect-ratio:1000/625;}
.laptop-screen img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.laptop-base{height:14px;margin:0 -4%;background:linear-gradient(180deg,#D3DEE2,#B2C1C8);border-radius:0 0 18px 18px;box-shadow:0 14px 24px rgba(21,48,60,0.2);}
.phone{position:absolute;display:block;text-decoration:none;width:21%;bottom:0;}
.phone-a{right:19%;z-index:2;}
.phone-b{right:0;bottom:22px;z-index:3;}
.phone-frame{background:#101E29;border:6px solid #101E29;border-radius:26px;overflow:hidden;box-shadow:0 24px 44px rgba(21,48,60,0.32);aspect-ratio:400/820;}
.phone-frame img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.laptop:hover .laptop-screen,.phone:hover .phone-frame{box-shadow:0 34px 64px rgba(15,95,115,0.36);}
.device-captions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;list-style:none;margin:26px 0 24px;font-size:13.5px;color:var(--mid);}
.device-captions strong{color:var(--ink);margin-right:6px;}
.devices-cta{text-align:center;}
.why-strip{background:var(--white);border-bottom:1px solid var(--mist);padding:52px 0;}
.why-title{font-family:var(--font-display);font-size:clamp(22px,2.4vw,28px);font-weight:700;text-align:center;letter-spacing:-0.01em;margin-bottom:28px;color:var(--ink);}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.why-item{background:var(--surface);border:1px solid var(--mist);border-radius:var(--r-md);padding:22px 20px;display:flex;flex-direction:column;gap:6px;}
.why-item .ic{width:42px;height:42px;border-radius:12px;background:var(--white);display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:var(--shadow-sm);margin-bottom:4px;}
.why-item strong{font-family:var(--font-display);font-size:16px;color:var(--ink);line-height:1.3;}
.why-item span{font-size:14px;color:var(--mid);line-height:1.6;}
.why-item a{color:var(--violet);font-weight:600;text-decoration:underline;}
.about-visual.about-photo{margin:0;background:var(--stone);}
.about-visual.about-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.about-visual.about-photo figcaption{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,0.94);color:var(--ink);font-size:13px;font-weight:600;padding:7px 14px;border-radius:40px;box-shadow:var(--shadow-sm);}
@media(max-width:900px){.why-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){
  .devices-section{padding:56px 0 44px;}
  .laptop{width:82%;}
  .phone{width:26%;}
  .phone-a{right:12%;}
  .phone-b{right:-2%;bottom:18px;}
  .phone-frame{border-width:4px;border-radius:16px;}
  .laptop-screen{border-width:6px;border-bottom-width:8px;border-radius:10px 10px 3px 3px;}
  .why-grid{grid-template-columns:1fr;}
  .device-captions{flex-direction:column;align-items:center;gap:4px;}
}
/* Pricing notes cards 2026-10-31 */
.pn-grid{max-width:1100px;margin:34px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:start;}
.pn-card{background:var(--white);border:1px solid var(--mist);border-radius:var(--r-lg);padding:20px 20px 16px;box-shadow:var(--shadow-sm);transition:border-color .2s,box-shadow .2s,transform .2s;}
.pn-card:hover{border-color:rgba(15,95,115,0.35);box-shadow:var(--shadow-card);transform:translateY(-2px);}
.pn-card:last-child{grid-column:auto;}
.pn-ico{width:44px;height:44px;border-radius:12px;background:var(--violet-bg);color:var(--violet);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.pn-card:nth-child(even) .pn-ico{background:rgba(237,185,85,0.12);color:#7A5200;}
.pn-icon{display:block;}
.pn-title{font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--ink);margin:0 0 6px;letter-spacing:-0.01em;}
.pn-line{font-size:13.5px;line-height:1.55;color:var(--mid);margin:0;}
.pn-more{margin-top:12px;border-top:1px solid var(--mist);padding-top:10px;}
.pn-more summary{cursor:pointer;list-style:none;font-size:12.5px;font-weight:600;color:var(--violet);display:inline-flex;align-items:center;gap:6px;}
.pn-more summary::-webkit-details-marker{display:none;}
.pn-more summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s;}
.pn-more[open] summary::after{transform:rotate(-135deg) translate(-1px,-1px);}
.pn-more summary:focus-visible{outline:2px solid var(--violet);outline-offset:3px;border-radius:4px;}
.pn-more p{font-size:12.5px;line-height:1.65;color:var(--mid);margin:10px 0 2px;}
.pn-hosting{margin-top:30px;max-width:720px;font-size:13.5px;}
.pn-excl{max-width:900px;margin:16px auto 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 12px;}
.pn-excl-label{font-family:var(--font-mono);font-size:12px;letter-spacing:0.13em;text-transform:uppercase;color:var(--violet);font-weight:500;}
.pn-excl ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0;padding:0;}
.pn-excl li{font-size:12px;font-weight:500;color:var(--stone);background:var(--surface);border:1px solid var(--mist);border-radius:999px;padding:5px 12px;line-height:1.3;}
@media(max-width:1100px){.pn-grid{grid-template-columns:repeat(2,1fr);max-width:760px;}}
@media(max-width:640px){.pn-grid{grid-template-columns:1fr;max-width:400px;}.pn-card:last-child{grid-column:auto;}}
@media(prefers-reduced-motion:reduce){.pn-card,.pn-more summary::after{transition:none;}.pn-card:hover{transform:none;}}

/* Browse-by-business-type chips (2026-11-02) */
.type-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;margin:0 auto 28px;max-width:900px;}
.type-chips-label{flex:0 0 100%;text-align:center;font-family:var(--font-mono);font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--stone);margin-bottom:4px;}
.type-chip{font-size:13px;font-weight:600;color:var(--stone);background:var(--white);border:1.5px solid var(--mist);padding:8px 14px;border-radius:40px;transition:all 0.2s;}
.type-chip:hover,.type-chip:focus-visible{border-color:var(--violet);color:var(--violet);background:var(--violet-bg);}
.type-chip:focus-visible{outline:3px solid var(--mint);outline-offset:2px;}

/* ---- hero: real sample on laptop + phone, tilt + parallax ---- */
.hero-price{display:inline-flex;align-items:center;gap:10px;background:var(--white);border:1px solid var(--mist);border-radius:40px;padding:9px 18px;font-size:15px;color:var(--ink);box-shadow:var(--shadow-sm);margin:-8px 0 26px;}
.hero-price strong{font-family:var(--font-display);font-weight:800;color:var(--violet);}
.hero-price .hp-dot{width:9px;height:9px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(237,185,85,.28);}
.hero-visual.hd{padding:0;perspective:1400px;}
.hd-stage{position:relative;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .3s ease-out;padding:14px 0 34px;}
.hd-layer{transform:translate3d(calc(var(--px,0)*var(--d,1)*1px),calc((var(--py,0) + var(--sy,0))*var(--d,1)*1px),calc(var(--d,1)*16px));transition:transform .3s ease-out;will-change:transform;}
.hd-laptop{display:block;width:90%;text-decoration:none;}
.hd-laptop .laptop-screen{box-shadow:0 34px 70px rgba(21,48,60,.34);}
.hd-phone{position:absolute;right:0;bottom:14px;width:25%;display:block;text-decoration:none;z-index:3;}
.hd-phone .phone-frame{box-shadow:0 26px 50px rgba(21,48,60,.4);}
.hd-chip{position:absolute;z-index:5;background:var(--white);border:1px solid var(--mist);border-radius:14px;padding:9px 14px;font-size:13px;font-weight:600;color:var(--ink);box-shadow:var(--shadow-card);display:flex;align-items:center;gap:8px;white-space:nowrap;animation:chipFloat 5s ease-in-out infinite;}
.hd-chip i{width:9px;height:9px;border-radius:50%;background:var(--violet);display:inline-block;}
.hd-chip-1{top:0;left:-14px;}
.hd-chip-2{bottom:6px;left:4%;animation-delay:-2.2s;}
.hd-chip-2 i{background:var(--mint);}
@keyframes chipFloat{0%,100%{translate:0 0;}50%{translate:0 -7px;}}
/* accent contrast on the filled card */
.price-card.popular .price-currency,.price-card.popular .feat-check{color:var(--on-primary-soft);}

/* ---- testimonials (real quotes from Margaret's freelance work; no photos or avatars) ---- */
.tm-section{background:var(--white);}
.tm-stats{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:12px 14px;margin:0 auto 34px;padding:0;}
.tm-stats li{background:var(--surface);border:1px solid var(--mist);border-radius:16px;padding:14px 26px;text-align:center;min-width:170px;}
.tm-stats strong{display:block;font-family:var(--font-display);font-size:28px;font-weight:800;color:var(--violet);line-height:1.1;}
.tm-stats span{font-size:13.5px;color:var(--mid);}
.tm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1100px;margin:0 auto;}
.tm-card{margin:0;background:var(--surface);border:1px solid var(--mist);border-radius:var(--r-xl);padding:26px 24px 22px;display:flex;flex-direction:column;gap:14px;position:relative;transition:box-shadow .25s,transform .25s,border-color .25s;}
.tm-card:hover{box-shadow:var(--shadow-card);transform:translateY(-3px);border-color:rgba(15,95,115,.25);}
.tm-stars{color:#B7791F;font-size:18px;letter-spacing:3px;line-height:1;}
.tm-card blockquote{font-size:15px;line-height:1.7;color:var(--ink);flex:1;}
.tm-card figcaption{font-size:13.5px;font-weight:600;color:var(--violet);border-top:1px solid var(--mist);padding-top:12px;}
.tm-note{text-align:center;font-size:13px;color:var(--mid);margin:18px auto 0;}
.tm-grid:focus-visible{outline:3px solid var(--mint);outline-offset:4px;}
@media(max-width:960px){.tm-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:700px){
 .tm-stats{gap:8px;margin-bottom:20px;}.tm-stats li{min-width:0;flex:1 1 30%;padding:10px 8px;}.tm-stats strong{font-size:22px;}.tm-stats span{font-size:12.5px;}
 .tm-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:2px 2px 12px;margin:0 -2px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;}
 .tm-card{flex:0 0 84%;scroll-snap-align:center;padding:20px 18px 16px;}
 .tm-card blockquote{font-size:14.5px;line-height:1.6;}
}
/* ---- scroll reveal (JS adds .reveal; nothing is hidden without JS) ---- */
.js .reveal{opacity:0;translate:0 26px;transition:opacity .7s ease var(--d,0s),translate .7s cubic-bezier(.2,.7,.2,1) var(--d,0s),box-shadow .25s,transform .25s,border-color .25s;}
.js .reveal.in{opacity:1;translate:0 0;}
/* ---- sample marquee ---- */
.mq-section{padding:58px 0 50px;background:var(--white);border-bottom:1px solid var(--mist);overflow:hidden;}
.mq-head{text-align:center;margin-bottom:26px;padding:0 20px;}
.mq-head h2{font-family:var(--font-display);font-size:clamp(22px,2.6vw,30px);font-weight:700;letter-spacing:-.01em;margin:8px 0 6px;}
.mq-head p{font-size:14.5px;color:var(--mid);max-width:560px;margin:0 auto;}
.mq-viewport{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);padding:6px 0 14px;}
.mq-track{display:flex;gap:18px;width:max-content;animation:mqScroll 80s linear infinite;}
.mq-viewport:hover .mq-track,.mq-viewport:focus-within .mq-track{animation-play-state:paused;}
@keyframes mqScroll{to{transform:translateX(calc(-50% - 9px));}}
.mq-card{display:block;width:300px;flex:0 0 auto;border-radius:18px;overflow:hidden;border:1px solid var(--mist);background:#fff;box-shadow:var(--shadow-sm);transition:transform .25s,box-shadow .25s,border-color .25s;color:var(--ink);}
.mq-card:hover,.mq-card:focus-visible{transform:translateY(-5px);box-shadow:var(--shadow-card);border-color:var(--violet);}
.mq-card:focus-visible{outline:3px solid var(--mint);outline-offset:3px;}
.mq-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:top;background:var(--violet-bg);}
.mq-cap{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 14px;font-size:14px;font-weight:600;}
.mq-cap small{font-family:var(--font-mono);font-size:12px;font-weight:500;color:var(--mid);white-space:nowrap;}
@media(prefers-reduced-motion:reduce){.mq-track{animation:none;}.mq-viewport{overflow-x:auto;-webkit-mask-image:none;mask-image:none;scroll-snap-type:x proximity;}.mq-card{scroll-snap-align:start;}.mq-dup{display:none;}.hd-chip{animation:none;}.js .reveal{opacity:1;translate:none;transition:none;}.hd-stage,.hd-layer{transition:none;}}
/* ---- before / after slider ---- */
.ba-section{padding:76px 0;background:var(--surface);}
.ba{position:relative;max-width:960px;margin:0 auto;aspect-ratio:16/9;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--mist);container-type:inline-size;--pos:50%;background:#fff;user-select:none;-webkit-user-select:none;}
.ba-after,.ba-before{position:absolute;inset:0;}
.ba-after img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.ba-before{clip-path:inset(0 calc(100% - var(--pos)) 0 0);pointer-events:none;}
.ba-handle{position:absolute;top:0;bottom:0;left:var(--pos);width:3px;background:#fff;transform:translateX(-50%);box-shadow:0 0 0 1px rgba(14,26,36,.18),0 0 16px rgba(14,26,36,.35);pointer-events:none;z-index:4;}
.ba-handle::after{content:"\21C6";position:absolute;top:50%;left:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:var(--violet);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 16px rgba(14,26,36,.4);border:3px solid #fff;}
.ba-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:5;-webkit-appearance:none;appearance:none;background:transparent;touch-action:pan-y;}
.ba-range::-webkit-slider-thumb{-webkit-appearance:none;width:2px;height:100vh;}
.ba-range::-moz-range-thumb{width:2px;height:100vh;border:0;}
.ba:focus-within .ba-handle::after{outline:3px solid var(--mint);outline-offset:2px;}
.ba-label{position:absolute;top:12px;z-index:3;background:rgba(14,26,36,.88);color:#fff;font-size:13px;font-weight:600;padding:6px 12px;border-radius:40px;pointer-events:none;}
.ba-label-l{left:12px;}.ba-label-r{right:12px;}
.ba-note{text-align:center;font-size:13.5px;color:var(--mid);margin:16px auto 0;max-width:640px;}
.ba-note a{color:var(--violet);font-weight:600;text-decoration:underline;}
/* the dated "before" site: plain table layout, system serif, default blue links */
.old{position:absolute;inset:0;background:#e6e6dc;font-family:"Times New Roman",Times,serif;color:#000;overflow:hidden;}
.old *{box-sizing:border-box;}
.old-head{background:#000080;color:#ffff00;text-align:center;font-weight:700;font-size:3.4cqw;padding:1.1cqw 0;border-bottom:.5cqw solid #ff0000;}
.old-nav{background:#c0c0c0;text-align:center;font-size:2cqw;padding:.7cqw 0;border-bottom:.3cqw solid #808080;}
.old-nav u{color:#0000ee;}
.old-body{display:flex;gap:1.6cqw;padding:1.6cqw 2cqw;}
.old-side{flex:0 0 24%;background:#c0c0c0;border:.4cqw outset #fff;padding:1cqw;font-size:1.9cqw;line-height:1.55;}
.old-side u{display:block;color:#0000ee;}
.old-main{flex:1;}
.old-main h3{font-family:"Comic Sans MS","Comic Sans",cursive;color:#cc0000;font-size:3.1cqw;margin:0 0 .8cqw;text-align:center;}
.old-main p{font-size:2cqw;line-height:1.35;margin:0 0 .9cqw;}
.old-tbl{border:.3cqw solid #000;width:100%;border-collapse:collapse;font-size:1.9cqw;background:#fffff0;}
.old-tbl td{border:.2cqw solid #000;padding:.4cqw .8cqw;}
.old-uc{margin-top:1cqw;background:repeating-linear-gradient(45deg,#ffd800 0 2cqw,#000 2cqw 4cqw);color:#000;font-weight:700;font-size:1.9cqw;text-align:center;padding:.5cqw;}
.old-uc span{background:#ffd800;padding:0 1cqw;}
.old-foot{position:absolute;left:0;right:0;bottom:0;background:#000;color:#00ff00;font-family:"Courier New",monospace;font-size:1.8cqw;text-align:center;padding:.7cqw 0;}
/* ---- agate section dividers already in common css; mobile collapse ---- */
.m-collapse>summary{display:none;}
.m-collapse.keep-sum>summary{display:block;list-style:none;pointer-events:none;font-family:var(--font-display);font-size:16px;font-weight:700;margin-bottom:8px;}
.m-collapse>summary::-webkit-details-marker{display:none;}
.price-features-wrap,.m-collapse.pf{flex:1;display:flex;flex-direction:column;}
.m-collapse.pf>ul{flex:1;}
.faq-more{display:none;margin:14px auto 0;}
@media(max-width:700px){
 .m-collapse>summary,.m-collapse.keep-sum>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;pointer-events:auto;min-height:44px;padding:10px 14px;margin-bottom:10px;border:1.5px solid var(--ui-border);border-radius:var(--r-md);font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--violet);background:transparent;}
 .m-collapse>summary::after{content:"+";font-size:20px;line-height:1;font-weight:500;}
 .m-collapse.is-open>summary::after{content:"\2013";}
 .price-card.popular .m-collapse>summary{color:#fff;border-color:rgba(255,255,255,.7);}
 .m-collapse.is-open>summary{margin-bottom:14px;}
 .m-collapse.keep-sum>summary{font-size:15.5px;font-family:var(--font-display);font-weight:700;color:var(--ink);}
 html.m .m-collapse:not(.is-open)>*:not(summary){display:none;}
 html.m .m-collapse:not(.is-open).pf{flex:0 0 auto;}
 html.m .faq-item:nth-child(n+6){display:none;}
 html.m .faq-wrap.show-all .faq-item{display:block;}
 html.m .faq-more{display:inline-flex;}
 html.m .faq-wrap.show-all~.faq-more{display:none;}
 /* tighter rhythm on phones */
 .section-pad{padding:44px 0;}.section-pad-sm{padding:36px 0;}
 .section-label{margin-bottom:26px;}
 .hero{padding:92px 0 40px;}
 .hero h1{margin-bottom:14px;}
 .hero-sub{margin-bottom:18px;font-size:15.5px;}
 .hero-actions{margin-bottom:18px;}
 .hero-who{margin-top:0;font-size:13px;}
 .hero-grid{gap:30px;}
 .trust-inner{gap:6px 16px;}
 .trust-item{font-size:13px;}
 .mq-section{padding:34px 0 28px;}.mq-card{width:240px;}
 .mq-head{margin-bottom:16px;}
 .ba-section{padding:40px 0;}
 .ba{border-radius:var(--r-lg);}
 .ba-x{display:none;}
 .section-sub{font-size:14.5px;line-height:1.6;}
 .footer-links{display:grid;grid-template-columns:1fr 1fr;column-gap:14px;}
 .footer-grid>div:nth-child(2),.footer-grid>div:nth-child(3){grid-column:1/-1;}
 .type-chip{font-size:12.5px;padding:7px 11px;}
 .tpl-featured-grid,#care .pricing-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:6px 2px 14px;margin:0 -2px;scrollbar-width:thin;}
 .tpl-featured-grid>*,#care .pricing-grid>*{flex:0 0 84%;scroll-snap-align:center;max-width:none;transform:none!important;}
 .ba-label{font-size:12px;padding:5px 10px;top:8px;}.ba-label-l{left:8px;}.ba-label-r{right:8px;}
 .why-strip{padding:34px 0;}.why-title{margin-bottom:16px;}
 .why-grid{grid-template-columns:repeat(2,1fr);gap:10px;}
 .why-item{padding:14px 12px;gap:3px;}.why-item .ic{width:34px;height:34px;font-size:16px;margin-bottom:2px;}
 .why-item strong{font-size:14.5px;}.why-item span{font-size:13px;line-height:1.45;}
 .service-card-lite{padding:20px 18px;}
 .tpl-featured-grid .tpl-desc,.tpl-featured-grid .tpl-tags{display:none;}
 .tpl-featured-grid .tpl-shot{aspect-ratio:21/9;}
 .tpl-featured-grid{gap:14px;margin-bottom:20px;}
 .tpl-featured-grid .tpl-body{padding:14px 16px 16px;gap:10px;}
 .type-chips{margin-bottom:18px;}
 .price-card,.pricing-grid.four .price-card{padding:22px 18px;}
 .price-amount{margin-bottom:14px;}.price-desc{margin-bottom:14px;}
 .fit-grid{margin-bottom:28px;gap:12px;}.fit-card{padding:16px 18px;}
 .steps-grid{grid-template-columns:repeat(2,1fr);gap:22px 10px;}
 .step{padding:0 4px;}.step-num{width:46px;height:46px;margin-bottom:12px;}.step-title{font-size:14px;margin-bottom:5px;}.step-body{font-size:13px;line-height:1.5;}
 .about-grid{gap:20px;}.about-visual.about-photo{aspect-ratio:16/10;}
 .static-strip{padding:34px 0;}.static-points{grid-template-columns:repeat(3,1fr);gap:8px;}.static-point{padding:12px 8px;text-align:center;}.static-point span{display:none;}.static-point strong{font-size:13px;margin:0;}
 footer{padding:40px 0 22px;}.footer-grid{grid-template-columns:1fr 1fr;gap:22px 14px;margin-bottom:26px;}.footer-brand{grid-column:1/-1;}
}
@media(max-width:960px){.hd-chip-1{left:0;}.hero-visual.hd{max-width:540px;margin:0 auto;}}
@media(max-width:480px){.hd-chip{font-size:12px;padding:7px 10px;}.hd-chip-1{top:-6px;}}

/* ===== Blue-Lace Agate redesign (2026-11-02) =====
   Palette: primary #0F5F73 (hover #17788F), tint #E1F0F3, accent amber #EDB955 (decoration / large text on primary only),
   ink #0E1A24, stone #15303C, surface #F4F8F9, body grey #4A606C, border #DBE6EA.
   Variable names (--violet, --mint ...) are kept from the previous theme so every rule keeps working. */
:root{--ui-border:#7A98A5;--on-primary-soft:#CFEFF5;--agate-line:linear-gradient(90deg,rgba(15,95,115,0),#0F5F73 18%,#EDB955 50%,#17788F 82%,rgba(15,95,115,0));}
.btn-secondary{border-color:var(--ui-border);}
.nav-logo .logo-mark{filter:drop-shadow(0 2px 6px rgba(15,95,115,.28));}
.hamburger{width:44px;height:44px;align-items:center;justify-content:center;padding:0;margin-right:-8px;}
.nav-links a:not(.btn-primary){display:inline-block;padding:12px 2px;}
.footer-links{gap:2px;}
.footer-links a{font-size:15px;display:inline-block;padding:9px 0;min-height:40px;}
.footer-tagline{font-size:14px;}
.footer-col-title{font-size:12.5px;}
.footer-bottom p,.footer-bottom a{font-size:13.5px;}
@media(max-width:700px){.footer-links a{min-height:44px;padding:11px 0;}}
section.section-pad,section.section-pad-sm,.why-strip,.static-strip,.ba-section,.mq-section{position:relative;}
section.section-pad::before,section.section-pad-sm::before,.why-strip::before,.static-strip::before,.ba-section::before{content:"";position:absolute;top:0;left:50%;width:min(1120px,calc(100% - 56px));height:2px;transform:translateX(-50%);background:var(--agate-line);opacity:.6;pointer-events:none;}
.how-bg::before{opacity:.9;}

/* ===== Multi-page split (home / pricing / about / contact) ===== */
.section-pad{padding:112px 0;}
@media(max-width:700px){.section-pad{padding:52px 0;}.section-pad-sm{padding:40px 0;}}
/* page hero */
.ph{position:relative;overflow:hidden;padding:148px 0 80px;background:linear-gradient(155deg,#F4F8F9 45%,#DDEEF2 100%);text-align:center;}
.ph .container{position:relative;z-index:1;}
.ph h1{font-family:var(--font-display);font-size:clamp(36px,5.6vw,68px);font-weight:800;line-height:1.04;letter-spacing:-.038em;max-width:900px;margin:14px auto 20px;color:var(--ink);}
.ph h1 .accent{color:var(--violet);}
.ph .ph-sub{max-width:680px;margin:0 auto;font-size:clamp(16px,1.5vw,19px);color:var(--mid);line-height:1.7;}
.ph .type-chips{margin:30px auto 0;}
.ph::after{content:"";position:absolute;left:50%;bottom:0;width:min(1120px,calc(100% - 56px));height:2px;transform:translateX(-50%);background:var(--agate-line);opacity:.7;}
@media(max-width:700px){.ph{padding:100px 0 40px;}.ph h1{margin:10px auto 14px;}.ph .ph-sub{font-size:15.5px;line-height:1.6;}.ph .type-chips{margin-top:20px;}}
/* package teaser + timelines */
.pk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1040px;margin:0 auto;}
.pk-chip{display:flex;flex-direction:column;gap:6px;padding:26px 22px;background:#fff;border:1px solid var(--mist);border-radius:var(--r-xl);color:var(--ink);transition:transform .25s,box-shadow .25s,border-color .25s;position:relative;overflow:hidden;}
a.pk-chip:hover,a.pk-chip:focus-visible{transform:translateY(-5px);box-shadow:var(--shadow-card);border-color:var(--violet);}
a.pk-chip:focus-visible{outline:3px solid var(--mint);outline-offset:3px;}
.pk-chip::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--agate-line);opacity:.9;}
.pk-name{font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--mid);}
.pk-price{font-family:var(--font-display);font-weight:800;font-size:42px;line-height:1;letter-spacing:-.03em;color:var(--violet);}
.pk-price small{display:block;font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);margin-bottom:6px;}
.pk-time{font-size:14px;color:var(--mid);line-height:1.5;}
.pk-more{text-align:center;margin-top:34px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.pk-foot{text-align:center;font-size:14px;color:var(--mid);margin-top:18px;}
@media(max-width:900px){.pk-grid{grid-template-columns:repeat(2,1fr);gap:12px;}}
@media(max-width:700px){.pk-chip{padding:18px 16px;}.pk-price{font-size:30px;}.pk-name{font-size:14px;}.pk-time{font-size:13.5px;}.pk-more{margin-top:22px;}}
.tl-note{max-width:680px;margin:26px auto 0;text-align:center;font-size:14.5px;color:var(--mid);line-height:1.65;}
/* final CTA band */
.fcta{position:relative;overflow:hidden;text-align:center;color:#fff;padding:112px 0;background:linear-gradient(135deg,#0E1A24 0%,#15303C 48%,#0F5F73 100%);}
.fcta::before{content:"";position:absolute;width:560px;height:560px;right:-120px;top:-220px;border-radius:50%;background:radial-gradient(circle,rgba(237,185,85,.28),rgba(237,185,85,0) 68%);pointer-events:none;}
.fcta::after{content:"";position:absolute;width:520px;height:520px;left:-160px;bottom:-260px;border-radius:50%;background:radial-gradient(circle,rgba(95,180,199,.30),rgba(95,180,199,0) 68%);pointer-events:none;}
.fcta .container{position:relative;z-index:1;}
.fcta .eyebrow{color:#EDB955;margin-bottom:14px;}
.fcta h2{font-family:var(--font-display);font-size:clamp(34px,5.4vw,64px);font-weight:800;letter-spacing:-.035em;line-height:1.04;max-width:860px;margin:0 auto 18px;}
.fcta p{color:rgba(255,255,255,.84);max-width:560px;margin:0 auto 34px;font-size:clamp(16px,1.5vw,19px);line-height:1.65;}
.fcta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.fcta .btn-white{font-size:16px;padding:16px 30px;}
.fcta .btn-ghost-white{font-size:16px;padding:15px 30px;}
@media(max-width:700px){.fcta{padding:60px 0;}.fcta p{margin-bottom:24px;font-size:15.5px;}.fcta-actions{gap:10px;}.fcta .btn-white,.fcta .btn-ghost-white{padding:14px 22px;font-size:15px;}}
/* home: testimonials teaser + about link */
.tm-more{text-align:center;margin-top:26px;}
.tm-more a{font-weight:600;color:var(--violet);border-bottom:2px solid var(--mint);padding-bottom:2px;}
.home-chips{margin-top:26px;padding:0 20px;}
@media(max-width:700px){.home-chips{margin-top:16px;}}
/* about */
.ab-story{display:grid;grid-template-columns:5fr 6fr;gap:56px;align-items:center;}
.ab-people{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:1040px;margin:56px auto 0;}
.person-card{background:#fff;border:1px solid var(--mist);border-radius:var(--r-xl);padding:30px 28px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;}
.person-card::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--agate-line);}
.person-card .eyebrow{margin-bottom:8px;}
.person-card h3{font-family:var(--font-display);font-size:26px;font-weight:800;letter-spacing:-.02em;margin-bottom:12px;}
.person-card p{color:var(--mid);line-height:1.75;font-size:15.5px;}
.person-card .about-points{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px;list-style:none;}
.person-card.ph-block{border-style:dashed;border-color:var(--ui-border);background:var(--surface);}
@media(max-width:900px){.ab-story{grid-template-columns:1fr;gap:28px;}.ab-people{grid-template-columns:1fr;margin-top:34px;}}
/* contact */
.contact-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:28px;align-items:start;max-width:1040px;margin:0 auto;}
.contact-grid .enquiry-form-wrap{max-width:none;margin:0;}
.mc-card{background:#fff;border:1px solid var(--mist);border-radius:var(--r-xl);padding:28px 26px;box-shadow:var(--shadow-sm);}
.mc-card+.mc-card{margin-top:18px;}
.mc-card h2,.mc-card h3{font-family:var(--font-display);font-size:19px;font-weight:800;margin-bottom:14px;letter-spacing:-.01em;}
.mc-steps{list-style:none;counter-reset:s;display:flex;flex-direction:column;gap:14px;}
.mc-steps li{counter-increment:s;display:flex;gap:12px;font-size:14.5px;color:var(--mid);line-height:1.55;}
.mc-steps li::before{content:counter(s);flex:0 0 28px;height:28px;border-radius:50%;background:var(--violet);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;}
.mc-mail{font-weight:700;color:var(--violet);word-break:break-word;border-bottom:2px solid var(--mint);}
.mc-card p{font-size:14.5px;color:var(--mid);line-height:1.65;}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;}}
/* scroll-driven horizontal showcase (desktop, motion allowed) */
.hs{display:none;}
html.hs-on .hs{display:block;position:relative;background:var(--ink);color:#fff;}
.hs-pin{position:sticky;top:0;height:100vh;min-height:560px;display:flex;align-items:center;overflow:hidden;padding-top:68px;}
.hs-pin::before{content:"";position:absolute;right:-8%;top:-18%;width:60vw;height:60vw;border-radius:50%;background:radial-gradient(circle,rgba(15,95,115,.55),rgba(15,95,115,0) 65%);pointer-events:none;}
.hs-left{flex:0 0 clamp(320px,32vw,460px);padding:0 28px 0 max(28px,calc((100vw - 1120px)/2));position:relative;z-index:2;}
.hs-left .eyebrow{color:#EDB955;}
.hs-left h2{font-family:var(--font-display);font-size:clamp(34px,3.6vw,54px);font-weight:800;letter-spacing:-.035em;line-height:1.04;margin:12px 0 14px;}
.hs-left p{color:rgba(255,255,255,.82);line-height:1.65;font-size:16px;}
.hs-progress{height:4px;border-radius:4px;background:rgba(255,255,255,.18);margin:26px 0 24px;overflow:hidden;}
.hs-progress i{display:block;height:100%;width:100%;transform-origin:left center;transform:scaleX(var(--p,0));background:linear-gradient(90deg,#5FB4C7,#EDB955);}
.hs-left .btn-white{font-size:15px;}
.hs-viewport{flex:1;min-width:0;overflow:hidden;position:relative;z-index:1;}
.hs-track{display:flex;gap:28px;padding:34px 120px 34px 8px;will-change:transform;transform:translate3d(var(--tx,0px),0,0);}
.hs-card{flex:0 0 clamp(340px,33vw,500px);border-radius:22px;overflow:hidden;background:#fff;color:var(--ink);box-shadow:0 22px 64px rgba(0,0,0,.42);display:block;transition:box-shadow .25s;}
.hs-card:nth-child(even){margin-top:46px;}
.hs-card:nth-child(odd){margin-bottom:46px;}
.hs-card:hover,.hs-card:focus-visible{box-shadow:0 26px 74px rgba(0,0,0,.55),0 0 0 3px #EDB955;}
.hs-card img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;background:var(--violet-bg);}
.hs-cap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 20px;font-weight:700;font-family:var(--font-display);font-size:17px;}
.hs-cap small{font-family:var(--font-mono);font-size:12.5px;font-weight:500;color:var(--mid);white-space:nowrap;}
/* home hero tweaks */
.hero-actions .btn-primary,.hero-actions .btn-secondary{font-size:16px;}
.hero-link{display:inline-block;margin-top:14px;font-size:14.5px;font-weight:600;color:var(--violet);border-bottom:2px solid var(--mint);}
@media(max-width:700px){.hero-link{margin-top:10px;}}

/* ===== industries ===== */
.ind-section{background:var(--surface);}
.ind-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:900px;margin:0 auto;}
.ind-card{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--mist);border-radius:var(--r-lg);padding:18px 20px;font-family:var(--font-display);font-weight:700;font-size:16px;line-height:1.25;color:var(--ink);transition:transform .25s,box-shadow .25s,border-color .25s;}
.ind-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-card);border-color:rgba(15,95,115,.35);}
.ind-card .ind-ico{flex:0 0 46px;width:46px;height:46px;padding:11px;border-radius:14px;background:var(--violet-bg);color:var(--violet);}
.ind-strip{background:var(--surface);padding:56px 0 52px;text-align:center;position:relative;}
.ind-strip-title{font-family:var(--font-display);font-weight:800;font-size:clamp(22px,2.6vw,30px);letter-spacing:-.02em;margin-bottom:6px;}
.ind-strip-sub{color:var(--mid);font-size:15px;margin-bottom:22px;}
.ind-chips{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:940px;margin:0 auto;}
.ind-chips .ind-card{padding:8px 16px 8px 8px;gap:10px;font-size:14px;border-radius:40px;}
.ind-chips .ind-card .ind-ico{flex:0 0 32px;width:32px;height:32px;padding:7px;border-radius:50%;}
.ind-chips .ind-card:hover{transform:none;}
@media(max-width:900px){.ind-grid{grid-template-columns:repeat(2,1fr);}.ind-grid .ind-card:last-child{grid-column:1/-1;}}
@media(max-width:700px){.ind-grid{gap:10px;}.ind-grid .ind-card{padding:14px 12px;gap:10px;font-size:14px;}.ind-grid .ind-card .ind-ico{flex-basis:38px;width:38px;height:38px;padding:9px;border-radius:12px;}.ind-strip{padding:36px 0 30px;}.ind-strip-sub{margin-bottom:16px;font-size:14.5px;}.ind-chips{gap:8px;}.ind-chips .ind-card{font-size:13px;padding:6px 12px 6px 6px;gap:8px;}.ind-chips .ind-card .ind-ico{flex-basis:28px;width:28px;height:28px;padding:6px;}}

/* Package card See more */
.feat-toggle{align-self:flex-start;margin:4px 0 14px;padding:8px 0;border:0;background:none;color:var(--violet);font:600 14px/1.3 var(--font-body);cursor:pointer;text-decoration:underline;text-underline-offset:3px;min-height:44px}
.price-card.popular .feat-toggle{color:#fff}
.feat-toggle:focus-visible{outline:3px solid var(--mint);outline-offset:3px;border-radius:4px}
.feat-more{margin:0}
.feat-more[hidden]{display:none!important}
.feat-more-list{margin-top:0!important;padding-top:0!important}
.m-collapse.pf > .price-features{order:0}
.m-collapse.pf > .feat-more{order:1}
.m-collapse.pf > .feat-toggle{order:2}
.m-collapse.pf > .price-note{order:3}
/* Timeline notes */
.tl-notes{display:grid;gap:14px;max-width:760px;margin:28px auto 0;text-align:left}
.tl-notes h3{font-size:15px;margin:0 0 4px;color:var(--ink)}
.tl-notes p{margin:0;font-size:14.5px;line-height:1.6;color:var(--mid)}
@media(min-width:720px){.tl-notes{grid-template-columns:repeat(3,1fr);gap:18px}}
/* Care intro notes */
.care-intro-notes{display:grid;gap:14px;max-width:900px;margin:18px auto 8px;text-align:left}
.care-intro-notes h3{font-size:15px;margin:0 0 4px;color:var(--ink)}
.care-intro-notes p{margin:0;font-size:14.5px;line-height:1.6;color:var(--mid)}
@media(min-width:720px){.care-intro-notes{grid-template-columns:repeat(3,1fr);gap:18px}}

/* About team bios */
.team-lead{margin:0 0 18px;font-size:16px;line-height:1.65;color:var(--mid)}
.team-bios{display:grid;gap:16px;margin:0 0 16px;text-align:left}
.team-bios h4{margin:0 0 6px;font-size:17px;font-family:var(--font-display);font-weight:700;color:var(--ink)}
.team-bios p{margin:0;font-size:15px;line-height:1.65;color:var(--mid)}
.team-close{margin:0 0 18px;font-size:15px;line-height:1.65;color:var(--mid)}
@media(min-width:720px){.team-bios{grid-template-columns:1fr 1fr;gap:22px}}

/* See more always visible (not inside mobile m-collapse accordion) */
.price-features-wrap.pf{flex:1;display:flex;flex-direction:column}
.price-features-wrap.pf > .price-features{order:0}
.price-features-wrap.pf > .feat-more{order:1}
.price-features-wrap.pf > .feat-toggle{order:2}
.price-features-wrap.pf > .price-note{order:3}
html.m .price-card .feat-toggle{display:inline-flex!important;visibility:visible!important}

/* Grouped pricing FAQ */
.faq-toolbar{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:720px;margin:0 auto 18px}
.faq-toolbar .btn-secondary{min-height:44px;padding:10px 16px;font-size:14px}
.faq-wrap.faq-grouped{max-width:720px;margin:0 auto}
.faq-group{margin:0 0 28px}
.faq-group-title{font-family:var(--font-display);font-size:20px;font-weight:700;margin:0 0 12px;color:var(--ink);letter-spacing:-.01em}
.faq-q-wrap{margin:0;font-size:inherit;font-weight:inherit}
.faq-wrap.faq-grouped .faq-question{font-size:16px;line-height:1.45;padding:18px 20px}
.faq-wrap.faq-grouped .faq-answer{font-size:15px;line-height:1.7;padding:0 20px}
.faq-wrap.faq-grouped .faq-item.open .faq-answer,
.faq-wrap.faq-grouped .faq-answer:not([hidden]){display:block;max-height:none;padding-bottom:20px;overflow:visible}
.faq-wrap.faq-grouped .faq-answer[hidden]{display:none!important;max-height:0;padding:0 20px;overflow:hidden}
html.m .faq-wrap.faq-grouped .faq-item{display:block!important}
html.m .faq-wrap.faq-grouped ~ .faq-more,
html.m .faq-more{display:none!important}


/* About: included-in-package strip (2026-11-09) */
.ab-included-section{background:var(--surface);}
.ab-included-head{max-width:640px;margin:0 auto 28px;text-align:center;}
.ab-included-head .section-sub{margin-left:auto;margin-right:auto;}
.ab-included-grid{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:960px;}
.ab-included-grid li{display:flex;gap:12px;align-items:flex-start;background:var(--white);border:1px solid var(--mist);border-radius:var(--r-md);padding:16px 16px 14px;box-shadow:var(--shadow-sm);}
.ab-inc-ico{flex:0 0 28px;width:28px;height:28px;border-radius:10px;background:var(--violet-bg);color:var(--violet);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;margin-top:1px;}
.ab-included-grid strong{display:block;font-family:var(--font-display);font-size:15.5px;font-weight:700;color:var(--ink);line-height:1.3;margin-bottom:4px;}
.ab-included-grid span{display:block;font-size:13.5px;line-height:1.55;color:var(--mid);}
.ab-included-foot{text-align:center;margin:22px 0 0;font-size:15px;}
.ab-included-foot a{color:var(--violet);font-weight:600;text-decoration:underline;text-underline-offset:3px;}
.ab-included-foot a:hover,.ab-included-foot a:focus-visible{color:var(--ink);}
@media(max-width:1100px){.ab-included-grid{grid-template-columns:repeat(2,1fr);max-width:720px;}}
@media(max-width:700px){
  .ab-included-grid{grid-template-columns:1fr;gap:10px;max-width:420px;}
  .ab-included-grid li{padding:14px 14px 12px;gap:10px;}
  .ab-included-grid strong{font-size:15px;}
  .ab-included-grid span{font-size:13px;line-height:1.5;}
  .ab-included-head{margin-bottom:20px;}
  .ab-included-foot{margin-top:18px;font-size:14.5px;}
}

.pricing-included-note{text-align:center;max-width:640px;margin:0 auto 28px;font-size:15.5px;line-height:1.55;color:var(--ink);font-weight:600;}
@media(max-width:700px){.pricing-included-note{font-size:14.5px;margin:0 auto 20px;line-height:1.5;padding:0 4px;}}

/* QA: comfortable gap between hero-note and CTAs on small screens only */
@media(max-width:640px){
  .hero-note{margin-bottom:18px!important;}
}
