/* Samantha Vass — Teal & Blush */
.sv{--cream:#FBF6F2;--white:#FFFFFF;--ink:#123C40;--ink-d:#0C2E31;--teal:#2E8B8B;--teal-t:#1F6F6F;--teal-w:#E1EFEE;--blush:#F2B8AE;--blush-d:#E3968A;--blush-w:#F6E3DE;--muted:#4F6466;--muted-d:#B9CFCE;--line:#E6DCD5;--line-d:#24555A;
--display:"Fraunces",Georgia,serif;--body:"Manrope","Helvetica Neue",system-ui,sans-serif;--mono:"DM Mono",ui-monospace,Menlo,monospace;
background:var(--cream);color:var(--ink);font:400 17px/1.6 var(--body);-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}
.sv *{box-sizing:border-box}
.sv .wrap{max-width:1200px;margin:0 auto;padding-inline:clamp(16px,4vw,44px)}
.sv h1,.sv h2,.sv h3{font-family:var(--display);font-weight:500;letter-spacing:-.025em;line-height:1;margin:0;text-wrap:balance;font-variation-settings:"SOFT" 100,"opsz" 144}
.sv h1{font-size:clamp(52px,7.6vw,112px);line-height:.95}
.sv h2{font-size:clamp(38px,5vw,68px)}
.sv h3{font-size:26px;letter-spacing:-.015em;line-height:1.1}
.sv p{margin:0}.sv ul{margin:0;padding:0;list-style:none}.sv a{color:inherit}
.sv em{font-style:italic;color:var(--teal)}
.sv .dark em{color:var(--blush)}
.sv .eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal-t)}
.sv .lede{color:var(--muted);max-width:56ch;font-size:19px}
.sv section{padding-block:clamp(72px,9vw,120px)}
.sv .head{display:grid;gap:18px;margin-bottom:clamp(36px,5vw,56px);max-width:760px}
.sv .head.center{margin-inline:auto;text-align:center;justify-items:center}
.sv .dark{background:var(--ink);color:var(--white)}
.sv .dark .lede{color:var(--muted-d)}.sv .dark .eyebrow{color:var(--blush)}
.sv .tint{background:var(--blush-w)}
.sv .white{background:var(--white)}
.sv .split{display:flex;flex-wrap:wrap;gap:48px 72px;align-items:center}
.sv .split > *{flex:1 1 400px;min-width:0}

/* nav + buttons */
.sv .top{position:sticky;top:0;z-index:30;background:rgba(251,246,242,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.sv .top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;padding-block:14px;flex-wrap:wrap}
.sv .mark{font-family:var(--display);font-size:24px;font-weight:500;letter-spacing:-.02em;text-decoration:none;display:flex;align-items:center;gap:10px}
.sv .mark i{width:12px;height:12px;border-radius:50%;background:var(--blush);box-shadow:8px 0 0 var(--teal);display:block;margin-right:8px}
.sv .navlinks{display:flex;gap:6px 26px;align-items:center;flex-wrap:wrap;font-size:15px;font-weight:600}
.sv .navlinks a{text-decoration:none;color:var(--muted);padding:6px 0}
.sv .navlinks a:hover{color:var(--ink)}
.sv .btn{display:inline-flex;align-items:center;gap:10px;padding:15px 28px;min-height:52px;border-radius:999px;background:var(--ink);color:var(--white)!important;text-decoration:none;font-weight:700;font-size:16px;transition:background .2s,transform .2s}
.sv .btn:hover{background:var(--teal-t);transform:translateY(-2px)}
.sv .btn.blush{background:var(--blush);color:var(--ink)!important}
.sv .btn.blush:hover{background:var(--white)}
.sv .btn.line{background:transparent;color:var(--ink)!important;box-shadow:inset 0 0 0 1.5px var(--ink)}
.sv .btn.sm{padding:10px 20px;min-height:44px;font-size:15px}

/* hero */
.sv .hero{padding-block:clamp(48px,6vw,88px) clamp(64px,8vw,104px)}
.sv .hero .wrap{display:flex;flex-wrap:wrap;gap:56px 72px;align-items:center}
.sv .hero-copy{flex:999 1 540px;min-width:0;display:grid;gap:30px}
.sv .hero-copy .lede{font-size:21px;color:var(--ink)}
.sv .portrait{flex:1 1 340px;max-width:430px;margin-inline:auto;position:relative}
.sv .portrait::before{content:"";position:absolute;inset:-18px 18px 18px -18px;background:var(--blush);border-radius:220px 220px 32px 32px}
.sv .portrait img{position:relative;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%;border-radius:220px 220px 32px 32px}

/* marquee */
.sv .marquee{background:var(--teal);color:var(--white);overflow:hidden;padding-block:20px}
.sv .marquee .track{display:flex;gap:40px;width:max-content;animation:svmarq 40s linear infinite;font-family:var(--display);font-size:clamp(28px,3.6vw,44px);letter-spacing:-.02em;white-space:nowrap}
.sv .marquee .track span{display:flex;align-items:center;gap:40px}
.sv .marquee .track span:nth-child(even){font-style:italic}
.sv .marquee .track span::after{content:"✦";color:var(--blush);font-size:.55em;font-style:normal}
@keyframes svmarq{to{transform:translateX(-50%)}}

/* paths (how to work with me) */
.sv .paths{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}
.sv .path{border-radius:32px;padding:34px;display:grid;gap:14px;align-content:start;background:var(--white);border:1px solid var(--line);position:relative}
.sv .path .n{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-t)}
.sv .path h3{font-size:32px}
.sv .path p{color:var(--muted)}
.sv .path .best{font-size:14px;color:var(--ink);border-top:1px dashed var(--line);padding-top:14px}
.sv .path .best b{font-weight:700}
.sv .path.feature{background:var(--ink);color:var(--white);border-color:var(--ink)}
.sv .path.feature p{color:var(--muted-d)}.sv .path.feature .n{color:var(--blush)}
.sv .path.feature .best{color:var(--white);border-color:var(--line-d)}
.sv .path.blushy{background:var(--blush-w);border-color:var(--blush-w)}
.sv .chips{display:flex;flex-wrap:wrap;gap:8px}
.sv .chip{font-size:13px;font-weight:600;padding:7px 13px;border-radius:999px;background:var(--teal-w);color:var(--ink)}
.sv .path.feature .chip{background:var(--line-d);color:var(--white)}
.sv .path.blushy .chip{background:var(--white)}

/* process map */
.sv .pmap{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:20px}
.sv .pnode{position:relative;padding-top:66px;display:grid;gap:10px;align-content:start;min-width:0}
.sv .pnode .pin{position:absolute;top:0;left:0;width:50px;height:50px;border-radius:50%;background:var(--teal);color:var(--white);display:grid;place-items:center;font-family:var(--mono);font-size:14px;z-index:1}
.sv .pnode::before{content:"";position:absolute;top:24px;left:58px;right:-12px;height:2px;background:repeating-linear-gradient(90deg,var(--teal) 0 7px,transparent 7px 14px)}
.sv .pnode:last-child::before{display:none}
.sv .pnode .when{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sv .pnode h3{font-size:22px}
.sv .pnode p,.sv .pnode li{font-size:15px;color:var(--muted)}
.sv .pnode ul{display:grid;gap:5px}
.sv .pnode li{padding-left:14px;position:relative}
.sv .pnode li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--blush-d)}
.sv .pnode.hi .pin{background:var(--blush);color:var(--ink)}
.sv .dark .pnode .pin{background:var(--blush);color:var(--ink)}
.sv .dark .pnode.hi .pin{background:var(--white)}
.sv .dark .pnode::before{background:repeating-linear-gradient(90deg,var(--blush) 0 7px,transparent 7px 14px)}
.sv .dark .pnode p,.sv .dark .pnode li,.sv .dark .pnode .when{color:var(--muted-d)}

/* service rows */
.sv .svc{display:flex;flex-wrap:wrap;gap:40px 72px;align-items:center;padding-block:clamp(48px,6vw,80px);border-top:1px solid var(--line)}
.sv .svc:first-of-type{border-top:0;padding-top:0}
.sv .svc > *{flex:1 1 400px;min-width:0}
.sv .svc.rev{flex-direction:row-reverse}
.sv .svc .txt{display:grid;gap:20px}
.sv .svc .num{font-family:var(--display);font-style:italic;font-size:22px;color:var(--teal)}
.sv .svc h3{font-size:clamp(34px,3.8vw,52px)}
.sv .ticks{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 24px;font-size:16px}
.sv .ticks li{padding-left:24px;position:relative}
.sv .ticks li::before{content:"";position:absolute;left:0;top:.45em;width:12px;height:7px;border-left:2px solid var(--teal);border-bottom:2px solid var(--teal);transform:rotate(-45deg)}
.sv .dark .ticks li::before{border-color:var(--blush)}
.sv .proofline{font-size:15px;color:var(--ink);background:var(--teal-w);border-radius:16px;padding:12px 16px}
.sv .proofline b{font-family:var(--display);font-size:18px;font-weight:600;color:var(--teal-t)}
.sv .visual{position:relative;min-height:440px}

/* phones, mocks */
.sv .phone{position:absolute;aspect-ratio:9/16;border-radius:28px;background:var(--ink-d);padding:6px;box-shadow:0 30px 60px -26px rgba(12,46,49,.55)}
.sv .phone video,.sv .phone img{width:100%;height:100%;object-fit:cover;border-radius:22px;display:block;background:#000}
.sv .blob{position:absolute;inset:6% 8% 4% 4%;border-radius:46% 54% 42% 58%/52% 44% 56% 48%;background:var(--blush-w)}
.sv .blob.teal{background:var(--teal-w)}
.sv .mock{background:var(--white);border-radius:22px;box-shadow:0 30px 60px -28px rgba(12,46,49,.45);border:1px solid var(--line);overflow:hidden;color:var(--ink)}
.sv .mock .bar{display:flex;gap:6px;padding:12px 16px;border-bottom:1px solid var(--line);align-items:center}
.sv .mock .bar i{width:9px;height:9px;border-radius:50%;background:var(--line);display:block}
.sv .ln{display:block;height:8px;border-radius:4px;background:var(--line)}
.sv .ln.k{height:13px;background:var(--ink)}
.sv .ai{background:var(--ink);border-radius:22px;padding:20px;display:grid;gap:10px;color:var(--white);box-shadow:0 30px 60px -28px rgba(12,46,49,.6)}
.sv .ai .q{justify-self:end;background:var(--line-d);border-radius:14px 14px 4px 14px;padding:9px 13px;font-size:14px;max-width:90%}
.sv .ai .a{font-size:14px;color:#DCEAE9;line-height:1.5}
.sv .ai mark{background:var(--blush);color:var(--ink);padding:1px 6px;border-radius:6px;font-weight:700}
.sv .ai small{font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--blush)}

/* iPhone SMS */
.sv .iphone{position:absolute;width:250px;aspect-ratio:9/19.5;border-radius:44px;background:#0B0B0F;padding:10px;box-shadow:0 36px 70px -30px rgba(0,0,0,.6),inset 0 0 0 2px #2A2A33}
.sv .iphone .screen{background:#FFF;border-radius:35px;height:100%;display:flex;flex-direction:column;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",sans-serif;color:#000}
.sv .island{width:84px;height:24px;background:#0B0B0F;border-radius:16px;margin:9px auto 0;flex:none}
.sv .chathead{display:grid;justify-items:center;gap:3px;padding:8px 0;background:#F6F6F7;border-bottom:1px solid #E5E5EA;flex:none}
.sv .avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--blush));color:#fff;display:grid;place-items:center;font-weight:600;font-size:14px}
.sv .chathead span{font-size:11px}
.sv .thread{flex:1;padding:10px;display:flex;flex-direction:column;gap:5px;font-size:12.5px;line-height:1.3}
.sv .ts{text-align:center;color:#8E8E93;font-size:10px;margin:2px 0 4px}
.sv .in,.sv .out{border-radius:16px;padding:7px 11px;max-width:82%}
.sv .in{align-self:flex-start;background:#E9E9EB;border-bottom-left-radius:5px}
.sv .out{align-self:flex-end;background:#248A3D;color:#fff;border-bottom-right-radius:5px}
.sv .dlv{align-self:flex-end;font-size:9.5px;color:#8E8E93}
.sv .compose{display:flex;align-items:center;gap:6px;padding:6px 10px 14px;flex:none}
.sv .compose i{width:26px;height:26px;border-radius:50%;background:#E9E9EB;display:grid;place-items:center;font-style:normal;color:#8E8E93;font-size:17px;line-height:1}
.sv .compose span{flex:1;border:1px solid #D1D1D6;border-radius:16px;padding:5px 10px;color:#8E8E93;font-size:12px}

/* reels */
.sv .reels{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:clamp(18px,2.4vw,32px)}
.sv .reel{display:grid;gap:12px;align-content:start;min-width:0}
.sv .reel .phone{position:relative;width:100%;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.sv .reel:nth-child(odd) .phone{transform:rotate(-2deg)}.sv .reel:nth-child(even) .phone{transform:rotate(2deg) translateY(16px)}
.sv .reel .phone:hover{transform:rotate(0) translateY(-6px)}
.sv .reel b{font-size:15px;padding-left:4px}
.sv .reel:nth-child(even) b{margin-top:16px}
.sv .tag{justify-self:start;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:var(--blush);color:var(--ink)}

/* proof */
.sv .logos{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.sv .logo{height:110px;border-radius:22px;background:var(--white);border:1px solid var(--line);display:grid;place-items:center;padding:18px;text-align:center}
.sv .logo img{max-width:80%;max-height:50px;object-fit:contain}
.sv .lg-a{font-family:var(--body);font-weight:800;font-size:24px;letter-spacing:-.03em}
.sv .lg-b{font-family:Georgia,serif;font-size:28px;font-style:italic}
.sv .lg-c{font-family:var(--display);font-size:30px}
.sv .brands{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 32px;font-family:var(--display);font-size:clamp(22px,2.4vw,32px);color:var(--ink)}
.sv .brands i{font-style:normal;color:var(--blush-d);font-size:.6em}
.sv .case{border-radius:36px;background:var(--ink);color:var(--white);padding:clamp(28px,4vw,48px);display:flex;flex-wrap:wrap;gap:32px 48px;align-items:center}
.sv .case > *{min-width:0}
.sv .case .brand{font-family:var(--display);font-style:italic;font-size:clamp(52px,6vw,84px);line-height:.9;color:var(--blush)}
.sv .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 28px}
.sv .stats div{display:grid;gap:2px;border-top:1px solid var(--line-d);padding-top:10px}
.sv .stats b{font-family:var(--display);font-weight:500;font-size:clamp(26px,2.8vw,38px);letter-spacing:-.02em;line-height:1}
.sv .stats span{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-d)}
.sv .thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.sv .thumbs img{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:16px;display:block}

/* cta + footer */
.sv .cta-card{border-radius:48px;padding:clamp(36px,6vw,88px);background:var(--teal);color:var(--white);display:grid;gap:24px;justify-items:start;position:relative;overflow:hidden}
.sv .cta-card::after{content:"";position:absolute;right:-90px;bottom:-90px;width:340px;height:340px;border-radius:50%;background:var(--blush)}
.sv .cta-card > *{position:relative;z-index:1}
.sv .cta-card h2{max-width:14ch;font-size:clamp(46px,6.4vw,92px)}
.sv .cta-card em{color:var(--blush)}
.sv .cta-card .lede{color:#E6F2F1}
.sv .contact-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sv .pill{font-family:var(--mono);font-size:15px;background:var(--white);color:var(--ink)!important;padding:14px 22px;border-radius:999px;text-decoration:none;min-height:52px;display:inline-flex;align-items:center}
.sv footer{padding-block:32px;color:var(--muted);font-size:14px;border-top:1px solid var(--line)}
.sv footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

@media (max-width:760px){
.sv .pnode::before{display:none}
.sv .visual{min-height:380px}
.sv .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.sv .thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}
.sv .reel:nth-child(even) .phone{transform:rotate(2deg)}
.sv .reel:nth-child(even) b{margin-top:0}
}
@media (prefers-reduced-motion:reduce){.sv *{transition:none!important;animation:none!important}}

/* v4 additions */
.sv .hero .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:48px 72px;align-items:center}
.sv .hero-copy,.sv .portrait{flex:none}
.sv .portrait{width:100%;max-width:430px;justify-self:end}
@media (max-width:860px){.sv .hero .wrap{grid-template-columns:1fr}.sv .portrait{justify-self:center;max-width:380px}}

/* realistic AI chat */
.sv .aichat{background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:0 30px 60px -28px rgba(12,46,49,.45);padding:16px;display:grid;gap:12px;color:#1f2328;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",var(--body);font-size:13px;line-height:1.5}
.sv .aichat .uq{justify-self:end;background:#F0F0F0;border-radius:18px;padding:8px 14px;max-width:88%}
.sv .aichat .ar{display:flex;gap:10px;align-items:flex-start}
.sv .aichat .spark{width:24px;height:24px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--teal-w)}
.sv .aichat .spark svg{width:14px;height:14px;fill:var(--teal)}
.sv .aichat ol{margin:6px 0 0;padding-left:18px;display:grid;gap:6px}
.sv .aichat b{font-weight:600;color:#000}
.sv .aichat .you{background:var(--blush-w);border-radius:4px;padding:0 3px}
.sv .aichat .cite{display:inline-block;font-size:10px;padding:1px 7px;border-radius:999px;background:#EEF0F2;color:#555;margin-left:4px;vertical-align:1px}
.sv .aichat .srcs{display:flex;flex-wrap:wrap;gap:6px;padding-left:34px}
.sv .aichat .srcs span{font-size:11px;padding:4px 9px;border-radius:8px;border:1px solid #E3E5E8;color:#444;background:#FAFAFA}

/* mailer */
.sv .mailer{position:absolute;background:var(--white);border-radius:6px;box-shadow:0 30px 60px -26px rgba(12,46,49,.5);overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr}
.sv .mailer .front{background:var(--teal);color:var(--white);padding:22px;display:grid;gap:8px;align-content:center;position:relative;overflow:hidden}
.sv .mailer .front::after{content:"";position:absolute;right:-40px;bottom:-40px;width:120px;height:120px;border-radius:50%;background:var(--blush)}
.sv .mailer .back{padding:16px;display:grid;gap:8px;align-content:start;font-size:11px;color:var(--muted);border-left:1px dashed var(--line)}
.sv .mailer .stamp{justify-self:end;width:38px;height:44px;border:2px dotted var(--blush-d);border-radius:3px;display:grid;place-items:center;font-family:var(--mono);font-size:8px;color:var(--blush-d)}

/* testimonials */
.sv .quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px}
.sv .quote{border-radius:32px;padding:clamp(28px,3.5vw,44px);display:grid;gap:22px;align-content:space-between;background:var(--white);border:1px solid var(--line)}
.sv .quote.dk{background:var(--ink);color:var(--white);border-color:var(--ink)}
.sv .quote .mk{font-family:var(--display);font-size:90px;line-height:.5;color:var(--blush);height:40px}
.sv .quote blockquote{margin:0;font-family:var(--display);font-size:clamp(22px,2.2vw,28px);line-height:1.3;letter-spacing:-.01em}
.sv .quote ul{display:grid;gap:8px;font-size:15px;color:var(--muted)}
.sv .quote.dk ul{color:var(--muted-d)}
.sv .quote ul li::before{content:"“";color:var(--teal);font-weight:700;margin-right:2px}
.sv .quote.dk ul li::before{color:var(--blush)}
.sv .quote .who{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:18px}
.sv .quote.dk .who{border-color:var(--line-d)}
.sv .quote .who i{width:44px;height:44px;border-radius:50%;background:var(--blush);display:grid;place-items:center;font-style:normal;font-family:var(--display);font-size:18px;color:var(--ink);flex:none}
.sv .quote .who b{display:block}.sv .quote .who span{font-size:14px;color:var(--muted)}
.sv .quote.dk .who span{color:var(--muted-d)}
.sv .stars{color:var(--blush-d);letter-spacing:3px;font-size:16px}

/* v5 layout fixes */
.sv .paths{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px}
.sv .path{display:flex;flex-direction:column;gap:16px;padding:32px 30px}
.sv .path h3{font-size:28px}
.sv .path .best{margin-top:auto}
.sv .pmap.five{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.sv .pmap.five .pnode::before{right:-10px}
.sv .logos.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.sv .logos.five .logo{height:96px;padding:12px}
.sv .logos.five .lg-a{font-size:clamp(16px,1.6vw,22px)}
.sv .logos.five .lg-b{font-size:clamp(18px,1.8vw,26px)}
.sv .logos.five .lg-c{font-size:clamp(20px,2vw,28px)}
@media (max-width:980px){
.sv .paths{grid-template-columns:1fr}
.sv .pmap.five{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.sv .logos.five{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
}

/* v6 additions */
/* signature project panels */
.sv .project{margin-top:48px;border-radius:36px;padding:clamp(24px,4vw,52px);display:grid;gap:36px}
.sv .project.blush-p{background:var(--blush-w)}
.sv .project.teal-p{background:var(--teal-w)}
.sv .project .ph{font-size:clamp(30px,3.6vw,50px);line-height:1.05}
.sv .pnode .goal{font-size:15px;color:var(--muted);line-height:1.5}
.sv .pnode .goal b{color:var(--ink);font-weight:700}
.sv .pmap.four{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sv .pmap.four .pnode::before{right:-10px}
.sv .ai-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:32px 48px;align-items:center}
.sv .ai-grid .aichat{font-size:14px}
.sv .project .proofline{background:var(--white)}

/* PR clipping */
.sv .visual.clipwrap{min-height:0;display:grid;gap:18px;align-content:center}
.sv .clip{background:var(--white);border:1px solid var(--line);border-radius:22px;padding:clamp(22px,3vw,32px);display:grid;gap:14px;box-shadow:0 30px 60px -32px rgba(12,46,49,.45)}
.sv .clip-top{display:flex;align-items:baseline;gap:12px;border-bottom:2px solid var(--ink);padding-bottom:10px;flex-wrap:wrap}
.sv .clip-pub{font-family:var(--body);font-weight:800;font-size:30px;letter-spacing:-.04em;line-height:1;color:var(--ink)}
.sv .clip-tag{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sv .clip-kicker{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-t)}
.sv .clip h4{margin:0;font-family:var(--display);font-weight:500;font-size:clamp(22px,2.2vw,28px);line-height:1.15;letter-spacing:-.015em}
.sv .clip p{font-size:15px;color:var(--muted)}
.sv .clip-link{font-weight:700;text-decoration:none;color:var(--teal-t)}
.sv .pickup{display:grid;gap:8px}
.sv .pickup a{display:grid;gap:2px;padding:12px 16px;border-radius:14px;background:var(--teal-w);text-decoration:none}
.sv .pickup a b{font-size:14px}.sv .pickup a span{font-size:13px;color:var(--muted)}
.sv .pickup a:hover{background:var(--blush-w)}

/* bigger email + web examples */
.sv .showcase{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start;justify-content:center}
.sv figure{margin:0;display:grid;gap:10px;justify-items:center}
.sv figcaption{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center}
.sv .zoom{all:unset;box-sizing:border-box;cursor:zoom-in;display:block;position:relative;background:var(--white);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(12,46,49,.45);transition:transform .25s}
.sv .zoom:hover{transform:translateY(-4px)}
.sv .zoom:focus-visible,.sv .filters button:focus-visible,.sv .pf-media:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.sv .zoom .bar{display:flex;gap:6px;padding:10px 14px;border-bottom:1px solid var(--line);align-items:center;background:var(--white)}
.sv .zoom .bar i{width:9px;height:9px;border-radius:50%;background:var(--line);display:block}
.sv .zoom .bar span{margin-left:8px;font-family:var(--mono);font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sv .zoom .bar .url{flex:1;height:20px;border-radius:999px;background:var(--cream);display:flex;align-items:center;padding-left:10px}
.sv .zoom-hint{position:absolute;right:12px;bottom:12px;background:var(--ink);color:var(--white);font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;opacity:.92}
.sv .ex-email{flex:1 1 300px;max-width:400px}
.sv .ex-email .zoom{width:100%}
.sv .ex-email img{display:block;width:100%;height:auto}
.sv .ex-sms{flex:0 0 auto}
.sv .ex-sms .iphone{position:relative;width:270px}
.sv .ex-web{flex:1 1 520px}
.sv .ex-web .zoom{width:100%}
.sv .ex-web video{display:block;width:100%;aspect-ratio:1280/726;object-fit:cover;background:var(--white)}

/* portfolio */
.sv .filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:32px}
.sv .filters button{font:600 14px var(--body);padding:10px 18px;min-height:44px;border-radius:999px;border:1.5px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer}
.sv .filters button:hover{border-color:var(--teal)}
.sv .filters button.on{background:var(--ink);border-color:var(--ink);color:var(--white)}
.sv .pf-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;grid-auto-flow:dense}
.sv .pf{display:grid;grid-template-rows:auto 1fr;gap:14px;min-width:0;align-content:start}
.sv .pf.wide{grid-column:span 2}
.sv .pf-media{all:unset;box-sizing:border-box;display:block;position:relative;width:100%;aspect-ratio:4/5;border-radius:22px;overflow:hidden;background:var(--teal-w);cursor:zoom-in}
.sv .pf.tall .pf-media{aspect-ratio:9/14}
.sv .pf.wide .pf-media{aspect-ratio:16/10}
.sv .pf-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.sv .pf-media:hover img{transform:scale(1.04)}
.sv .play{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:rgba(251,246,242,.92);box-shadow:0 10px 30px -10px rgba(0,0,0,.5)}
.sv .play::after{content:"";position:absolute;left:23px;top:18px;border-left:16px solid var(--ink);border-top:11px solid transparent;border-bottom:11px solid transparent}
.sv .pf-txt{display:grid;gap:6px;align-content:start}
.sv .pf-cat{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-t)}
.sv .pf h3{font-size:22px}
.sv .pf p{font-size:15px;color:var(--muted)}
.sv .pf-media.press{cursor:pointer;background:var(--white);border:1px solid var(--line);padding:clamp(22px,3vw,36px);display:grid;align-content:space-between;gap:12px;text-decoration:none;color:var(--ink)}
.sv .pf-media.press .clip-pub{border-bottom:2px solid var(--ink);padding-bottom:10px}
.sv .pf-hl{font-family:var(--display);font-size:clamp(22px,2.4vw,32px);line-height:1.12;letter-spacing:-.02em}
.sv .pf-media.press:hover{border-color:var(--teal)}
.sv .pf-media.type{cursor:default;display:grid;align-content:center;justify-items:center;text-align:center;gap:8px;padding:24px}
.sv .pf-media.farm{background:#EFE7DC;color:#3D3A2E}
.sv .farm .t1{font-family:var(--display);font-style:italic;font-size:20px}
.sv .farm .t2{font-family:var(--display);font-size:clamp(28px,2.6vw,36px);line-height:1;letter-spacing:-.02em}
.sv .farm .t3{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-top:8px}
.sv .pf-media.aeo{background:var(--ink);color:var(--white)}
.sv .aeo .t1{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--blush)}
.sv .aeo .t2{font-family:var(--display);font-size:clamp(24px,2.3vw,30px);line-height:1.1}
.sv .aeo .t3{font-size:13px;color:var(--muted-d);max-width:24ch}
.sv .pf-media.echelon{cursor:default;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:var(--ink);padding:4px}
.sv .echelon img{border-radius:16px}
.sv .echelon .stat{position:absolute;left:12px;right:12px;bottom:12px;background:var(--blush);color:var(--ink);font-weight:700;font-size:13px;padding:8px 12px;border-radius:999px;text-align:center}

/* reviews: full text */
.sv .quote blockquote{font-size:clamp(19px,1.7vw,23px);line-height:1.45}
.sv .quote .who span{display:block}

/* lightbox */
.sv .lb{border:0;padding:0;background:transparent;max-width:min(92vw,1100px);max-height:92vh;overflow:visible}
.sv .lb::backdrop{background:rgba(12,46,49,.86)}
.sv .lb-body{display:grid;place-items:center}
.sv .lb-body img,.sv .lb-body video{display:block;max-width:min(92vw,1100px);max-height:82vh;width:auto;height:auto;border-radius:14px;background:#000}
.sv .lb-cap{color:var(--white);text-align:center;margin-top:12px;font-size:15px}
.sv .lb-x{position:absolute;top:-14px;right:-14px;width:44px;height:44px;border-radius:50%;border:0;background:var(--white);color:var(--ink);font-size:26px;line-height:1;cursor:pointer;z-index:2}

@media (max-width:980px){
.sv .pmap.four{grid-template-columns:repeat(2,minmax(0,1fr))}
.sv .ai-grid{grid-template-columns:1fr}
.sv .pf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
.sv .pf-grid{grid-template-columns:1fr}
.sv .pf.wide{grid-column:auto}
.sv .pf.tall .pf-media{aspect-ratio:4/5}
.sv .pmap.four{grid-template-columns:1fr}

.sv .lb-x{top:8px;right:8px}
}
.sv .svc .pnode h3{font-size:24px;line-height:1.1}
.sv #email .txt{flex:1 1 300px}
.sv #email .showcase{flex:2 1 600px;flex-wrap:nowrap}
.sv #email .ex-email{flex:1 1 300px;max-width:400px}
@media (max-width:700px){.sv #email .showcase{flex-wrap:wrap}}
.sv #web > .txt{flex:1 1 300px}
.sv #web > .ex-web{flex:2 1 560px}

/* v7 */
.sv .seemore a{font-weight:700;color:var(--teal-t);text-decoration:none}
.sv #social .visual{min-height:520px}
.sv #social .phone video{background:#000}
.sv .vid-label{position:absolute;right:0;bottom:-34px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-t)}
.sv .pnode .goal{font-size:15px}

/* magazine clipping */
.sv a.mag{display:grid;gap:12px;background:var(--white);border:1px solid var(--line);border-radius:6px;padding:clamp(22px,3vw,34px);text-decoration:none;color:#1E1E1E;box-shadow:0 34px 60px -30px rgba(12,46,49,.45);transform:rotate(-1.5deg);transition:transform .3s}
.sv a.mag:hover{transform:rotate(0) translateY(-4px)}
.sv .mag-mast{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid #1E1E1E;padding-bottom:12px;flex-wrap:wrap}
.sv .mag-city{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#6B6B6B}
.sv .mag-logo{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:22px;letter-spacing:.32em;color:#1E1E1E;white-space:nowrap}
.sv .mag-logo i{font-style:normal;margin:0 .35em;letter-spacing:0;color:var(--blush-d)}
.sv .mag-sec{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--blush-d)}
.sv a.mag h4{margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:clamp(36px,4vw,52px);line-height:.95;letter-spacing:-.01em}
.sv .mag-dek{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:19px;line-height:1.3;color:#444}
.sv .mag-body{font-size:14.5px;line-height:1.65;color:#3A3A3A;column-count:2;column-gap:22px;border-top:1px solid #E5E0DA;padding-top:14px}
.sv .dropcap{float:left;font-family:"Cormorant Garamond",Georgia,serif;font-size:52px;line-height:.8;margin:6px 6px 0 0;color:var(--teal)}
.sv .mag-foot{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:#6B6B6B;flex-wrap:wrap}
.sv .mag-foot b{color:var(--teal-t)}
.sv .logos.six{grid-template-columns:repeat(6,minmax(0,1fr))}
.sv .logos.six .logo{height:96px;padding:12px}
.sv .logos.six .lg-a{font-size:clamp(15px,1.5vw,20px)}
.sv .logos.six .lg-b{font-size:clamp(17px,1.6vw,23px)}
.sv .logos.six .lg-c{font-size:clamp(19px,1.8vw,25px)}
.sv .lg-d{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(14px,1.4vw,18px);letter-spacing:.24em;text-transform:uppercase}

/* email inbox mock */
.sv #email .txt{flex:1 1 100%}
.sv #email .txt .ticks{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.sv #email .showcase{flex:1 1 100%;flex-wrap:wrap;align-items:flex-start}
.sv #email .ex-email{flex:1 1 560px;max-width:720px}
.sv .inbox{width:100%;background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(12,46,49,.45);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",var(--body);color:#1f2328}
.sv .ib-top{display:flex;align-items:center;gap:16px;padding:10px 14px;background:#F3F5F7;border-bottom:1px solid #E3E6EA}
.sv .ib-dots{display:flex;gap:6px}.sv .ib-dots i{width:10px;height:10px;border-radius:50%;background:#D6DADF;display:block}
.sv .ib-search{flex:1;max-width:340px;background:var(--white);border:1px solid #E3E6EA;border-radius:999px;padding:6px 14px;font-size:12px;color:#8A9096}
.sv .ib-main{display:grid;grid-template-columns:170px minmax(0,1fr)}
.sv .ib-list{border-right:1px solid #ECEEF1;background:#FAFBFC;display:grid;align-content:start}
.sv .ib-item{display:grid;gap:6px;padding:12px 14px;border-bottom:1px solid #ECEEF1;font-size:12px}
.sv .ib-item b{font-weight:600}.sv .ib-item span{color:#5F6670}
.sv .ib-item.on{background:var(--teal-w);box-shadow:inset 3px 0 0 var(--teal)}
.sv .ib-item .ln{height:7px;background:#E6E9ED}
.sv .ib-read{padding:16px 18px 18px;display:grid;gap:12px;min-width:0}
.sv .ib-subj{font-size:18px;font-weight:600;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sv .ib-label{font-size:11px;font-weight:500;background:#ECEEF1;color:#5F6670;padding:2px 8px;border-radius:4px}
.sv .ib-from{display:flex;align-items:center;gap:10px;font-size:13px}
.sv .ib-from small{display:block;color:#8A9096;font-size:11px}
.sv .ib-from time{margin-left:auto;color:#8A9096;font-size:12px}
.sv .ib-av{width:34px;height:34px;border-radius:50%;background:#1A100B;color:#E9592A;display:grid;place-items:center;font-weight:700;font-family:Georgia,serif}
.sv .ib-body.zoom{border-radius:8px;box-shadow:none;max-height:520px;overflow:hidden}
.sv .ib-body img{display:block;width:100%;height:auto}

/* portfolio by client */
.sv .ctabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:28px}
.sv .ctabs button{font:600 14px var(--body);padding:10px 18px;min-height:44px;border-radius:999px;border:1.5px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer}
.sv .ctabs button:hover{border-color:var(--teal)}
.sv .ctabs button[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:var(--white)}
.sv .ctabs button:focus-visible,.sv .ex-card:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.sv .client{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:40px 56px;background:var(--white);border:1px solid var(--line);border-radius:36px;padding:clamp(24px,4vw,48px);align-items:start}
.sv .client + .client{margin-top:24px}
.sv .cl-info{display:grid;gap:18px;align-content:start}
.sv .cl-tag{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-t)}
.sv .cl-info h3{font-size:clamp(32px,3.4vw,46px)}
.sv .cl-info dl{margin:0;display:grid;gap:16px}
.sv .cl-info dl > div{display:grid;gap:4px;border-top:1px solid var(--line);padding-top:12px}
.sv .cl-info dt{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.sv .cl-info dd{margin:0;font-size:15.5px;line-height:1.55}
.sv .cl-info dd ul{display:grid;gap:4px}
.sv .cl-info dd li{padding-left:16px;position:relative}
.sv .cl-info dd li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--blush-d)}
.sv .cl-info .res{background:var(--teal-w);border:0;border-radius:18px;padding:14px 16px}
.sv .cl-info .res dt{color:var(--teal-t)}
.sv .cl-info .res dd{font-family:var(--display);font-size:19px;line-height:1.35}
.sv .cl-ex{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px;align-content:start}
.sv .cl-ex .ex.wide{grid-column:1/-1}
.sv .ex{justify-items:stretch;align-content:start}
.sv .ex figcaption{text-align:left}
.sv .ex-card{all:unset;box-sizing:border-box;display:grid;position:relative;width:100%;aspect-ratio:4/5;border-radius:18px;overflow:hidden;background:var(--cream);border:1px solid var(--line);color:var(--ink);font-family:var(--body)}
.sv .ex-card.vid{cursor:zoom-in;background:#000;border:0}
.sv .ex-card.vid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.sv .ex-card.vid:hover img{transform:scale(1.04)}
.sv .ex-card.web{aspect-ratio:16/9}
.sv .ex-card.press,.sv .ex-card.mag-mini{cursor:pointer;background:var(--white);padding:20px;align-content:space-between;gap:10px;text-decoration:none}
.sv .ex-card.press .clip-pub{border-bottom:2px solid var(--ink);padding-bottom:8px}
.sv .ex-card .pf-hl{font-family:var(--display);font-size:21px;line-height:1.15;letter-spacing:-.015em}
.sv .ex-card.mag-mini .pf-hl{font-family:"Cormorant Garamond",Georgia,serif;font-size:28px;line-height:1}
.sv .ex-card.mag-mini .mag-logo{font-size:13px;letter-spacing:.26em;border-bottom:1px solid #1E1E1E;padding-bottom:8px}
.sv .ex-card.mag-mini .mag-dek{font-size:15px}
.sv .ex-more{font-weight:700;font-size:13px;color:var(--teal-t)}
.sv .ex-card.press:hover,.sv .ex-card.mag-mini:hover{border-color:var(--teal)}
.sv .ex-card.li{background:var(--white);padding:16px;align-content:start;gap:8px;font-size:12.5px;line-height:1.45;color:#1f2328}
.sv .li-head{display:flex;gap:8px;align-items:center}
.sv .li-head small{display:block;color:#666;font-size:11px}
.sv .li-av{width:32px;height:32px;border-radius:6px;background:#F28C28;color:#fff;display:grid;place-items:center;font-weight:800;font-size:12px}
.sv .ex-card.li ul{display:grid;gap:3px;padding-left:2px}
.sv .ex-card.li li::before{content:"✓ ";color:var(--teal)}
.sv .ex-card.book{background:var(--ink);color:var(--white);padding:20px;align-content:start;gap:8px}
.sv .bk-brand{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--blush)}
.sv .bk-title{font-family:var(--display);font-size:26px;line-height:1}
.sv .bk-sub{font-size:12px;color:var(--muted-d)}
.sv .ex-card.book ol{margin:8px 0 0;padding-left:18px;display:grid;gap:6px;font-size:12.5px;color:#DCEAE9}
.sv .ex-card.book ol b{color:var(--white);display:block}
.sv .ex-card.bb{background:#FAF8FA;align-content:center;justify-items:center;gap:8px;padding:20px;text-align:center}
.sv .bb-logo{font-family:"Cormorant Garamond",Georgia,serif;font-size:40px;letter-spacing:.18em;color:#31293F}
.sv .bb-by{font-family:"Cormorant Garamond",Georgia,serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#947DAA;margin-top:-6px}
.sv .bb-sw{display:flex;gap:6px;margin-top:10px}.sv .bb-sw i{width:30px;height:30px;border-radius:50%;display:block;border:1px solid #E4DEE8}
.sv .bb-type{display:flex;gap:14px;align-items:baseline;margin-top:6px;color:#31293F}
.sv .bb-h{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px}.sv .bb-s{font-family:"Gill Sans","Gill Sans MT",Calibri,sans-serif;font-size:14px;letter-spacing:.08em}
.sv .ex-card.bh{background:#31293F;color:#FAF8FA;padding:20px;align-content:center;gap:10px}
.sv .bh-k{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#DCCAE9}
.sv .ex-card.bh b{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:22px;line-height:1.1;border-bottom:1px solid #4A4060;padding-bottom:8px}
.sv .bh-q{font-size:12.5px;line-height:1.5;color:#DCCAE9;font-style:italic}
.sv .ex-card.farm{background:#EFE7DC;color:#3D3A2E;align-content:center;justify-items:center;text-align:center;gap:8px;padding:22px}
.sv .farm .t1{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:20px}
.sv .farm .t2{font-family:"Cormorant Garamond",Georgia,serif;font-size:34px;line-height:1}
.sv .farm .t3{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;margin-top:8px}
.sv .ex-card.farm-in{background:#FBF8F3;color:#3D3A2E;padding:20px;align-content:start;gap:10px}
.sv .farm-in .t1{font-family:"Cormorant Garamond",Georgia,serif;font-size:28px;border-bottom:1px solid #D9CFC0;padding-bottom:6px}
.sv .farm-in div{display:grid;gap:2px}.sv .farm-in b{font-size:13px}.sv .farm-in span{font-size:12px;color:#6E6A5C}
.sv .ex-card.ech{aspect-ratio:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:6px;background:var(--ink);border:0}
.sv .ex-card.ech img{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:12px;display:block}
.sv .ex-card.stat-card{background:var(--ink);color:var(--white);padding:18px;grid-template-columns:1fr 1fr;align-content:center;gap:14px;border:0}
.sv .stat-card div{display:grid;gap:2px;border-top:1px solid var(--line-d);padding-top:8px}
.sv .stat-card b{font-family:var(--display);font-weight:500;font-size:26px;color:var(--blush)}
.sv .stat-card span{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-d)}
@media (max-width:980px){
.sv .client{grid-template-columns:1fr}
.sv .logos.six{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:640px){
.sv .ib-main{grid-template-columns:1fr}.sv .ib-list{display:none}
.sv .mag-body{column-count:1}
.sv #social .visual{min-height:440px}
.sv .vid-label{bottom:-28px;font-size:10px}
.sv .ex-card.ech{grid-template-columns:repeat(2,minmax(0,1fr))}
.sv .logos.six{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.sv [hidden]{display:none!important}
@media (max-width:640px){
.sv #social .phone{height:78%!important;top:4%!important;right:0!important}
.sv #social .mock{width:62%!important}
}
/* v8 */
.sv .mark i{display:none}
.sv #email .ex-email{max-width:860px}
.sv .ib-read{background:var(--white)}
.sv .ib-canvas{background:#F1F2F4;border-radius:10px;padding:22px 16px;display:grid;justify-items:center}
.sv .em{width:100%;max-width:460px;background:#1A100B;box-shadow:0 2px 10px rgba(0,0,0,.12)}
.sv .em-head{display:grid;justify-items:center;gap:2px;padding:20px 16px 14px;border-bottom:1px solid #3A271C}
.sv .em-logo{font-family:"Cormorant Garamond",Georgia,serif;font-size:26px;letter-spacing:.42em;color:#F4EDE6;padding-left:.42em}
.sv .em-sub{font-family:var(--mono);font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:#E9592A}
.sv .zoom.em-img{border:0;border-radius:0;box-shadow:none;width:100%}
.sv .zoom.em-img:hover{transform:none}
.sv .em-img img{display:block;width:100%;height:auto}
.sv .em-foot{display:grid;gap:4px;text-align:center;padding:14px 18px 18px;font-size:10.5px;line-height:1.5;color:#9C8A7E;border-top:1px solid #3A271C}
/* v9 email */
.sv .ib-main{grid-template-columns:1fr}
.sv .ib-canvas{display:block;background:#1A100B;padding:0;border-radius:8px;max-height:640px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.sv .ib-canvas img{display:block;width:100%;max-width:560px;height:auto;margin:0 auto}
.sv .ib-canvas:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.sv .open-full{justify-self:start;font:700 14px var(--body);padding:10px 18px;min-height:44px;border-radius:999px;border:0;background:var(--ink);color:var(--white);cursor:zoom-in}
.sv .open-full:hover{background:var(--teal-t)}
.sv .lb.tall .lb-body{max-height:84vh;overflow-y:auto;display:block;border-radius:14px}
.sv .lb.tall .lb-body img{max-height:none;width:min(600px,90vw);border-radius:0}
.sv .ib-canvas{background:#F1F2F4;padding:18px 12px}
.sv .ib-canvas img{max-width:440px;box-shadow:0 2px 12px rgba(0,0,0,.12)}
.sv .ib-canvas img{cursor:zoom-in}
.sv #email .ex-email{max-width:620px}
.sv .ib-canvas{max-height:500px}
.sv .ib-canvas img{max-width:330px}
/* v10 email stage */
.sv #email .txt{flex:1 1 340px}
.sv #email .showcase.stage{flex:1.3 1 520px;position:relative;display:block;min-height:640px}
.sv .stage .blob{inset:4% 2% 2% 4%}
.sv .stage .ex-email{position:absolute;left:0;top:44px;width:min(62%,370px);max-width:none;transform:rotate(-3deg);z-index:1;display:grid;gap:12px;justify-items:start}
.sv .stage .ex-sms{position:absolute;right:0;top:0;transform:rotate(4deg);z-index:2;display:grid;gap:12px;justify-items:end}
.sv .stage .ex-sms .iphone{width:250px}
.sv .stage .inbox{box-shadow:0 40px 70px -30px rgba(12,46,49,.55)}
.sv .stage .ib-top{padding:8px 12px}
.sv .stage .ib-search{font-size:11px;padding:4px 12px}
.sv .stage .ib-read{padding:12px 14px 14px;gap:10px}
.sv .stage .ib-subj{font-size:15px}
.sv .stage .ib-canvas{max-height:400px;padding:14px 10px}
.sv .stage .ib-canvas img{max-width:250px}
.sv .stage .open-full{font-size:13px;min-height:40px;padding:8px 16px}
.sv .tagpill{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;background:var(--ink);color:var(--white);padding:7px 12px;border-radius:999px;text-align:left}
.sv .tagpill.blush{background:var(--blush);color:var(--ink)}
@media (max-width:640px){
.sv #email .showcase.stage{min-height:0;display:grid;gap:36px;justify-items:center}
.sv .stage .ex-email,.sv .stage .ex-sms{position:relative;left:auto;right:auto;top:auto;width:100%;max-width:360px;justify-items:center}
.sv .stage .ex-sms{width:auto}
}
.sv .stage .ex-email{left:14px}
.sv .stage .thread{font-size:11.5px;gap:4px}
.sv .stage .chathead{padding:6px 0}
.sv .stage .compose{display:none}.sv .stage .thread{padding-bottom:14px}
/* v11 portfolio stories */
.sv .cstory{background:var(--white);border:1px solid var(--line);border-radius:36px;padding:clamp(26px,4vw,52px);display:grid;gap:clamp(24px,3vw,36px)}
.sv .cs-name{display:grid;gap:10px;border-bottom:1px solid var(--line);padding-bottom:22px}
.sv .cs-name h3{font-size:clamp(34px,4vw,56px)}
.sv .cs-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.sv .cs-cols > div{display:grid;gap:10px;align-content:start}
.sv .cs-k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-t)}
.sv .cs-cols p{font-size:16px;line-height:1.65;color:var(--ink)}
.sv .cs-res{background:var(--ink);border-radius:24px;padding:22px}
.sv .cs-res .cs-k{color:var(--blush)}
.sv .cs-res p{font-family:var(--display);font-size:21px;line-height:1.35;color:var(--white)}
@media (max-width:900px){.sv .cs-cols{grid-template-columns:1fr}}
/* v12 portfolio w/ work */
.sv .cs-cols.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.sv .cs-list{display:grid;gap:6px;margin-top:4px}
.sv .cs-list li{padding-left:22px;position:relative;font-size:15.5px;line-height:1.5}
.sv .cs-list li::before{content:"";position:absolute;left:0;top:.42em;width:11px;height:6px;border-left:2px solid var(--teal);border-bottom:2px solid var(--teal);transform:rotate(-45deg)}
.sv .cs-ex{display:grid;gap:14px;border-top:1px solid var(--line);padding-top:24px}
.sv .cs-ex .cl-ex{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:18px}
.sv .cs-ex .ex.wide{grid-column:span 2}
.sv .ex-card.doc{cursor:zoom-in;background:var(--cream)}
.sv .ex-card.doc img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform .4s}
.sv .ex-card.doc:hover img{transform:scale(1.03)}
.sv .ex-card.deck,.sv .ex-card.web{aspect-ratio:16/10}
.sv .ex-card.email-tile{background:#1A100B}
.sv .badge{position:absolute;left:10px;bottom:10px;background:var(--ink);color:var(--white);font:700 12px var(--body);padding:6px 11px;border-radius:999px}
.sv .lb.gal .lb-body{display:grid;gap:12px;background:transparent}
.sv .lb.gal .lb-body img{width:min(960px,90vw)}
@media (max-width:900px){.sv .cs-cols.two{grid-template-columns:1fr}}
@media (max-width:560px){.sv .cs-ex .cl-ex{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sv .cs-ex .ex.wide{grid-column:1/-1}.sv .ex-card.ech{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sv .cl-ex > .case{grid-column:1/-1}
/* v13 coffee shop mailer */
.sv .pc-stack{position:absolute;left:0;top:14%;width:72%;aspect-ratio:9/6.4;z-index:1}
.sv .pc{position:absolute;width:100%;aspect-ratio:9/6;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.08),0 30px 50px -24px rgba(43,29,20,.55);overflow:hidden}
.sv .pc-back{top:0;left:6%;transform:rotate(7deg);background:#FBF8F2 repeating-linear-gradient(0deg,rgba(0,0,0,.012) 0 2px,transparent 2px 4px);display:grid;grid-template-columns:1.1fr 1fr;padding:6% 5%;gap:6%;color:#2B1D14;font-family:var(--body)}
.sv .pc-back-l{display:grid;gap:5px;align-content:start;border-right:1px solid #E4DACB;padding-right:6%}
.sv .pc-mini-logo{font-family:var(--display);font-size:13px;letter-spacing:.14em;color:#2B1D14}
.sv .pc-mini-logo small{display:block;font-family:var(--mono);font-size:6.5px;letter-spacing:.24em;color:#C8623A}
.sv .pc-back-l b{font-size:11px;line-height:1.3;margin-top:4px}
.sv .pc-fine{font-size:7.5px;color:#8A7563}
.sv .pc-hours{display:grid;font-size:7.5px;color:#5C4636;margin-top:4px}
.sv .pc-addr{font-size:7.5px;color:#5C4636}
.sv .pc-back-r{display:grid;align-content:space-between}
.sv .pc-indicia{justify-self:end;border:1.5px solid #2B1D14;padding:4px 6px;font:700 6.5px/1.35 var(--body);text-align:center;letter-spacing:.04em}
.sv .pc-to{display:grid;gap:1px;font:600 8px/1.3 var(--mono);color:#2B1D14}
.sv .pc-barcode{height:12px;background:repeating-linear-gradient(90deg,#2B1D14 0 1px,transparent 1px 3px,#2B1D14 3px 5px,transparent 5px 6px)}
.sv .pc-front{top:16%;left:0;transform:rotate(-5deg);background:#F3E9DA;color:#2B1D14;padding:5.5% 6%;display:grid;grid-template-rows:auto 1fr auto;gap:4%;
background-image:radial-gradient(circle at 18% 22%,rgba(255,255,255,.55),transparent 45%),repeating-radial-gradient(circle at 30% 40%,rgba(120,80,40,.025) 0 1px,transparent 1px 3px)}
.sv .pc-front::before{content:"";position:absolute;inset:0;border:1.5px solid rgba(43,29,20,.18);margin:3.2%;border-radius:2px;pointer-events:none}
.sv .pc-top{display:flex;justify-content:space-between;align-items:center;position:relative}
.sv .pc-logo{display:flex;align-items:center;gap:7px;font-family:var(--display);font-size:13px;letter-spacing:.16em}
.sv .pc-logo i{width:24px;height:24px;border-radius:50%;background:#2B1D14;color:#F3E9DA;display:grid;place-items:center;font-style:italic;font-size:13px;letter-spacing:0}
.sv .pc-logo small{display:block;font-family:var(--mono);font-size:6px;letter-spacing:.22em;color:#C8623A}
.sv .pc-badge{background:#C8623A;color:#FFF7EE;font:700 8px var(--body);letter-spacing:.14em;text-transform:uppercase;padding:5px 9px;border-radius:999px}
.sv .pc-head{display:grid;align-content:center;gap:4px;max-width:60%;position:relative;z-index:1}
.sv .pc-kicker{font-family:var(--display);font-style:italic;font-size:12px;color:#7A5236}
.sv .pc-title{font-family:var(--display);font-weight:600;font-size:clamp(30px,3.3vw,44px);line-height:.88;letter-spacing:-.02em;color:#2B1D14;text-transform:uppercase}
.sv .pc-date{font:700 10px var(--body);letter-spacing:.06em;color:#C8623A;margin-top:4px}
.sv .pc-perks{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:8.5px;font-weight:600;color:#2B1D14;border-top:1px solid rgba(43,29,20,.2);padding-top:6px;position:relative;z-index:1;max-width:66%}
.sv .pc-perks li::before{content:"✦ ";color:#C8623A}
.sv .pc-cup{position:absolute;right:-9%;top:22%;width:52%;height:auto;transform:rotate(-12deg)}
@media (max-width:640px){.sv .pc-stack{width:80%;top:18%}.sv .pc-title{font-size:26px}.sv .pc-back{font-size:90%}}
.sv .pc-stack{width:66%;top:12%}
.sv .pc-back{left:4%;top:-4%;transform:rotate(6deg)}
.sv .pc-head{max-width:62%}
.sv .pc-perks{max-width:62%}
.sv .pc-cup{right:-4%;top:30%;width:44%}
@media (max-width:640px){.sv .pc-stack{width:70%}}
@media (max-width:640px){
.sv #events .visual .phone{height:66%!important;top:14%!important}
.sv .pc-stack{width:76%;top:16%}
.sv .pc-front{padding:5% 6%}
.sv .pc-logo{font-size:10px;gap:5px}.sv .pc-logo i{width:18px;height:18px;font-size:10px}.sv .pc-logo small{font-size:5px}
.sv .pc-badge{font-size:6.5px;padding:4px 7px}
.sv .pc-kicker{font-size:9.5px}.sv .pc-title{font-size:22px}.sv .pc-date{font-size:8px}
.sv .pc-perks{font-size:7px;padding-top:4px}
.sv .pc-back{display:none}
}
/* v14 IG post */
.sv .ig-post{position:absolute;left:2%;top:4%;width:54%;max-width:320px;background:#fff;border:1px solid #DBDBDB;border-radius:10px;box-shadow:0 30px 60px -28px rgba(43,29,20,.5);transform:rotate(-4deg);z-index:1;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#111;overflow:hidden}
.sv .ig-head{display:flex;align-items:center;gap:8px;padding:8px 10px}
.sv .ig-av{width:28px;height:28px;border-radius:50%;padding:2px;background:linear-gradient(45deg,#F9CE34,#EE2A7B,#6228D7);display:grid}
.sv .ig-av i{border-radius:50%;background:#2B1D14;color:#F3E9DA;border:2px solid #fff;display:grid;place-items:center;font:italic 600 11px var(--display)}
.sv .ig-head b{font-size:12px;font-weight:600;display:block;line-height:1.1}
.sv .ig-head small{font-size:10px;color:#737373}
.sv .ig-dots{margin-left:auto;font-size:9px;letter-spacing:1px;color:#111}
.sv .ig-media{position:relative;aspect-ratio:4/5;background:#F3E9DA;padding:8% 8% 9%;display:grid;grid-template-rows:auto 1fr;overflow:hidden;
background-image:radial-gradient(circle at 20% 15%,rgba(255,255,255,.6),transparent 45%),repeating-radial-gradient(circle at 30% 40%,rgba(120,80,40,.025) 0 1px,transparent 1px 3px)}
.sv .ig-media .pc-head{max-width:none;align-content:start;margin-top:14%}
.sv .ig-media .pc-title{font-size:clamp(30px,3vw,40px)}
.sv .ig-media .pc-cup{position:absolute;right:-14%;bottom:-6%;top:auto;width:68%;transform:rotate(-12deg)}
.sv .ig-perk{position:absolute;left:8%;bottom:7%;max-width:46%;font:700 9.5px/1.3 var(--body);color:#2B1D14;background:#FFF7EE;border:1px solid rgba(43,29,20,.15);border-radius:8px;padding:6px 8px}
.sv .ig-cta{display:flex;justify-content:space-between;padding:8px 12px;background:#0095F6;color:#fff;font-size:12px;font-weight:600}
.sv .ig-actions{display:flex;gap:12px;padding:9px 12px 4px}
.sv .ig-actions svg{width:20px;height:20px}
.sv .ig-actions .ig-save{margin-left:auto}
.sv .ig-cap{font-size:11px;line-height:1.4;padding:2px 12px 12px;color:#111}
.sv .ig-cap b{font-weight:600}
.sv .ig-cap span{color:#00376B}
@media (max-width:640px){.sv .ig-post{width:58%}.sv .ig-media .pc-title{font-size:22px}.sv .ig-cap{display:none}.sv .ig-perk{font-size:7.5px}}

/* tighter reviews + contact */
.sv #reviews,.sv #contact{padding-block:clamp(56px,6vw,84px)}
.sv #reviews .head{margin-bottom:clamp(28px,3.5vw,40px)}
.sv #reviews .quote{padding:clamp(22px,2.6vw,32px);gap:16px}
.sv #reviews .quote .mk{font-size:64px;height:26px}
.sv #reviews .quote blockquote{font-size:clamp(16px,1.35vw,19px);line-height:1.5}
.sv #reviews .quote .who{padding-top:14px}
.sv .cta-card{padding:clamp(28px,4vw,56px);gap:18px;border-radius:36px}
.sv .cta-card h2{font-size:clamp(36px,4.6vw,64px);max-width:16ch}
.sv .cta-card::after{width:240px;height:240px;right:-70px;bottom:-70px}
.sv #events .visual{min-height:580px}
.sv #events .visual .phone{top:10%!important;height:78%!important}
.sv .ig-post{top:2%}
@media (max-width:640px){.sv #events .visual{min-height:470px}.sv #events .visual .phone{height:62%!important;top:16%!important}}
/* v15 IG graphic redesign */
.sv .ig-media.igm{background:#2B1D14;padding:0;display:block;color:#F6EBDD}
.sv .igm::before{content:"";position:absolute;inset:0;background:repeating-radial-gradient(circle at 50% 100%,rgba(255,255,255,.035) 0 1px,transparent 1px 4px);pointer-events:none}
.sv .igm-sun{position:absolute;left:50%;bottom:-38%;width:118%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle at 50% 40%,#F2B279 0,#E08A4F 38%,#C8623A 70%);box-shadow:0 0 0 18px rgba(200,98,58,.18),0 0 0 40px rgba(200,98,58,.08)}
.sv .igm-logo{position:absolute;top:6%;left:0;right:0;display:grid;justify-items:center;gap:2px}
.sv .igm-logo span{font-family:var(--display);font-size:13px;letter-spacing:.42em;padding-left:.42em;color:#F6EBDD}
.sv .igm-logo small{font-family:var(--mono);font-size:6.5px;letter-spacing:.34em;color:#E08A4F}
.sv .igm-head{position:absolute;top:19%;left:0;right:0;display:grid;justify-items:center;text-align:center;gap:6px}
.sv .igm-kicker{font-family:var(--display);font-style:italic;font-size:13px;color:#E9C9A6}
.sv .igm-title{font-family:var(--display);font-weight:500;font-size:clamp(36px,3.6vw,48px);line-height:.86;letter-spacing:-.02em;text-transform:uppercase;color:#F6EBDD}
.sv .igm-date{margin-top:6px;font:700 9.5px var(--body);letter-spacing:.16em;text-transform:uppercase;color:#2B1D14;background:#F6EBDD;padding:6px 12px;border-radius:999px}
.sv .igm-date i{font-style:normal;color:#C8623A}
.sv .igm-cup{position:absolute;left:50%;bottom:9%;width:46%;transform:translateX(-50%) rotate(-14deg);filter:drop-shadow(0 10px 14px rgba(43,29,20,.35))}
.sv .igm-perk{position:absolute;left:0;right:0;bottom:3.5%;text-align:center;font:700 8.5px var(--body);letter-spacing:.12em;text-transform:uppercase;color:#2B1D14}
@media (max-width:640px){.sv .igm-title{font-size:26px}.sv .igm-kicker{font-size:10px}.sv .igm-date{font-size:7px;padding:4px 8px}.sv .igm-perk{font-size:6.5px}.sv .igm-logo span{font-size:10px}}
.sv .igm::before{display:none}
.sv .igm-sun{bottom:-62%;width:112%;box-shadow:0 0 0 14px rgba(200,98,58,.16),0 0 0 30px rgba(200,98,58,.07)}
.sv .igm-head{z-index:2;top:20%}
.sv .igm-cup{width:36%;bottom:12%}
.sv .igm-perk{font-size:7.5px;letter-spacing:.08em;padding:0 6%;z-index:2}
@media (max-width:640px){.sv .igm-perk{font-size:6px}}
@media (max-width:640px){.sv .igm-perk{padding:0 14%;line-height:1.35;bottom:2.5%}}
/* v16 */
.sv .press-logos .logo{height:104px;padding:16px 18px}
.sv .press-logos .logo img{display:block;width:auto;height:auto;object-fit:contain}
.sv .press-logos .lg-w img{max-width:86%;max-height:30px}
.sv .press-logos .lg-m img{max-width:70%;max-height:34px}
.sv .press-logos .lg-t img{max-width:72%;max-height:48px}
.sv .ex-card.mailtile{background:#F1F2F4;display:grid;grid-template-rows:auto 1fr;cursor:zoom-in}
.sv .mt-bar{display:flex;align-items:center;gap:8px;padding:9px 10px;background:#fff;border-bottom:1px solid #E6E8EB;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",var(--body);text-align:left}
.sv .mt-bar i{width:22px;height:22px;border-radius:50%;background:#1A100B;color:#E9592A;display:grid;place-items:center;font:700 10px Georgia,serif;flex:none;font-style:normal}
.sv .mt-bar b{display:block;font-size:10.5px;font-weight:600;color:#1f2328;line-height:1.2}
.sv .mt-bar small{display:block;font-size:9.5px;color:#6B7178;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sv .mt-bar > span{min-width:0}
.sv .mt-canvas{display:block;overflow:hidden;padding:10px 14% 0}
.sv .ex-card.mailtile .mt-canvas img{width:100%;height:auto;object-fit:initial;box-shadow:0 2px 8px rgba(0,0,0,.15);transition:transform .4s}
.sv .ex-card.mailtile:hover .mt-canvas img{transform:translateY(-6px)}
.sv .ex-card.press-arl{cursor:pointer;background:var(--white);padding:18px;align-content:space-between;gap:10px;text-decoration:none}
.sv .ex-card.press-arl:hover{border-color:var(--teal)}
.sv .arl-logo{font:800 24px/1 var(--body);letter-spacing:-.03em;color:#1a1a1a;border-bottom:2px solid #1a1a1a;padding-bottom:8px}
.sv .arl-logo b{font-weight:800;color:#D3202F}
.sv .ex-card.press-arl .pf-hl{font-size:18px}
@media (max-width:980px){.sv .press-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.sv .press-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.sv .press-logos .logo{height:84px}}
