/* ArthOps v9 — page components, loaded after base.css on every page. Light site in the look of the approved Home (film style). */

/* ---------- Header: six links, phone menu ---------- */
.site-header{height:88px;position:fixed;inset:0 0 auto;z-index:40;padding-inline:40px;display:flex;align-items:center;gap:38px;color:var(--ink);background:linear-gradient(#f6f4f0f0,#f6f4f000);transition:background .25s}
.site-header.is-scrolled{background:#f6f4f0f2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.site-header nav{display:flex;gap:28px;margin-left:auto;align-items:center;font-size:13px}
.site-header nav a{transition:color .2s;padding:12px 0;line-height:1.5}
.site-header nav a:hover,.site-header nav a[aria-current="page"]{color:var(--accent)}
.site-header nav .nav-contact{font-weight:600}
#menu-toggle{display:none;color:var(--ink);background:#ffffffb0;border:1px solid #00000026;border-radius:30px;padding:10px 14px;font-size:12px;line-height:1.5;min-height:40px;margin-left:12px}
@media(max-width:1100px){.site-header{padding-inline:30px;gap:25px}.site-header nav{gap:22px}}
@media(max-width:900px){
  .site-header nav{display:none}
  #menu-toggle{display:inline-flex;align-items:center;margin-left:auto}
  .site-header.menu-open{background:#f6f4f0f8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
  .site-header.menu-open nav{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:100%;left:0;right:0;gap:0;padding:6px 20px 22px;background:#f6f4f0f8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid #e3dfd7;font-size:17px;margin:0}
  .site-header.menu-open nav a{padding:15px 0;border-top:1px solid #e3dfd7;line-height:1.4;text-align:left;display:block}
  .site-header.menu-open nav a:first-child{border-top:0}
}
@media(max-width:800px){.site-header .wordmark{font-size:32px}}
@media(max-width:650px){
  .site-header{height:72px;padding-inline:20px;gap:12px}
  .site-header .wordmark{font-size:30px}
  .site-header.menu-open nav{padding:4px 20px 18px;font-size:16px}
  #menu-toggle{font-size:11px;padding:9px 11px}
}
@media(max-width:370px){.site-header{gap:10px}.site-header .wordmark{font-size:28px}}
/* No JavaScript: show the links in a row under the wordmark so the site stays navigable */
.no-js .site-header{height:auto;flex-wrap:wrap;padding-bottom:10px;background:var(--page)}
.no-js .site-header nav{display:flex;flex-wrap:wrap;width:100%;gap:4px 16px;margin:0}
.no-js #menu-toggle{display:none}

/* ---------- Eyebrows, page opening ---------- */
.eyebrow,.lt-owner{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.page-hero{position:relative;padding:168px 0 64px;isolation:isolate;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:-30% -10% auto;height:130%;z-index:-1;pointer-events:none;background:radial-gradient(55% 55% at 22% 18%,#f3d9c4aa,transparent 70%),radial-gradient(45% 45% at 82% 30%,#e8b77d44,transparent 70%)}
.page-hero .eyebrow{margin-bottom:20px}
.page-hero h1{font-size:clamp(40px,5.2vw,74px);max-width:16ch;color:var(--ink)}
.page-hero .lede{font-size:clamp(17px,1.5vw,21px);line-height:1.6;color:var(--ink-2);max-width:720px;margin-top:26px}
.page-hero .lede a{text-decoration:underline;text-underline-offset:3px}
.page-hero .actions{margin-top:30px}

/* ---------- Sections ---------- */
.section,.lt-section{padding:88px 0}
.section.alt,.lt-section.alt{background:var(--band);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section.alt+.section.alt,.lt-section.alt+.lt-section.alt{border-top:0}
.section h2,.lt-section h2{font-size:clamp(30px,3.3vw,50px);max-width:20ch;letter-spacing:-.03em;color:var(--ink)}
.section h2 span{color:var(--ink-3)}
.section .eyebrow{display:block;margin-bottom:12px}
.section-intro,.lt-intro{max-width:680px;font-size:17px;line-height:1.7;color:var(--ink-2);margin-top:20px}
.section-intro a,.lt-intro a{text-decoration:underline;text-underline-offset:3px}
.section .shell>*+*{margin-top:36px}
.section .shell>h2+.section-intro,.section .shell>.eyebrow+h2{margin-top:0}
.section .shell>h2+.section-intro{margin-top:20px}
.lt-two{display:grid;grid-template-columns:.9fr 1.1fr;gap:6%;align-items:center}
.section .shell.lt-two>*+*{margin-top:0}
.lt-two .section-intro,.lt-two .lt-intro{margin-top:20px}

/* ---------- Cards ---------- */
.lt-card{background:#fff;border:1px solid var(--card-line);border-radius:20px;box-shadow:var(--shadow);padding:22px 24px}
.cards{display:grid;gap:18px;margin-top:40px}
.cards.three{grid-template-columns:repeat(3,1fr)}
.cards.two{grid-template-columns:1fr 1fr}
.cards .lt-card{display:flex;flex-direction:column;gap:12px}
.cards .lt-card>*{margin-top:0}
.cards .lt-card.reveal{transition-delay:calc(var(--i,0) * .1s)}
.lt-card .lbl{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:8px;margin:0}
.lt-card .lbl i{width:7px;height:7px;border-radius:50%;background:var(--orange)}
.lt-card h3{font-size:20px;line-height:1.3;color:var(--ink)}
.lt-card>p,.lt-card>div>p{font-size:14.5px;line-height:1.65;color:#555}
.lt-card>p+p{margin-top:8px}
.lt-card .lt-pill,.lt-card .lt-chip{vertical-align:middle}
.lt-card a:not(.button){text-decoration:underline;text-underline-offset:3px}
.lt-card .know-more a{text-decoration:none}
.lt-card .rule-list li{font-size:14.5px;margin-top:8px}
.lt-card .rule-list{margin-top:-2px}
.lt-card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:13px;color:#5f5f5f;flex-wrap:wrap}
.lt-card-head b{color:var(--ink);font-weight:600;margin-right:8px}
.lt-card-foot{margin-top:18px;padding-top:12px;border-top:1px solid var(--hair);font-size:12px;color:var(--ink-3);line-height:1.5}
.cards .lt-card .lt-card-foot{margin-top:auto}
.lt-pill{display:inline-block;font-size:11px;font-weight:600;color:var(--accent);background:var(--tint);border-radius:12px;padding:3px 9px;white-space:nowrap}
.lt-pill.warn{color:var(--warn);background:var(--warn-bg)}
.lt-pill.ok{color:var(--ok);background:var(--ok-bg)}
.lt-chip{display:inline-block;font-size:11px;font-weight:600;color:var(--ok);background:var(--ok-bg);border-radius:10px;padding:3px 9px}
.lt-tasks{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}

/* ---------- Key–value list ---------- */
.kv>div{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:14px 0;border-top:1px solid #ddd6cb;font-size:15px;line-height:1.7}
.kv>div:first-child{border-top:0;padding-top:0}
.kv dt{font-size:12px;letter-spacing:.02em;text-transform:uppercase;padding-top:5px;color:var(--ink-3)}
.kv dd{color:var(--ink-2);min-width:0;overflow-wrap:anywhere}
.kv a{text-decoration:underline;text-underline-offset:3px}
.lt-card .kv>div{grid-template-columns:104px 1fr;gap:12px;padding:10px 0;border-top-color:var(--hair);font-size:14px;line-height:1.55}
.lt-card .kv dt{font-size:11px;padding-top:3px}
.section>.shell>.kv{max-width:760px}

/* ---------- Rows with a status ---------- */
.lt-rows{margin-top:14px}
.lt-rows li{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 0;border-top:1px solid var(--hair);font-size:14px;color:var(--ink)}
.lt-rows li:first-child{border-top:0}
.lt-rows li span:last-child:not(.ok):not(.pend){text-align:right;color:var(--ink-2)}
.lt-rows .ok{color:var(--ok);background:var(--ok-bg);border-radius:10px;padding:3px 9px;font-size:12px;font-weight:600;white-space:nowrap}
.lt-rows .pend{color:var(--warn);background:var(--warn-bg);border-radius:10px;padding:3px 9px;font-size:12px;font-weight:600;white-space:nowrap}
.lt-rows li span b{color:var(--accent);margin-right:6px}

/* ---------- Numbered steps ---------- */
.lt-steps{display:grid;gap:0;max-width:760px}
.lt-steps li{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:16px 0;border-top:1px solid #ddd6cb}
.lt-steps li:first-child{border-top:0;padding-top:0}
.lt-steps .n{width:30px;height:30px;border-radius:50%;border:1px solid var(--burnt);background:#fff;color:var(--accent);font-size:12px;font-weight:600;display:grid;place-items:center}
.lt-steps b{display:block;font-size:17px;color:var(--ink);font-weight:600;line-height:1.4}
.lt-steps small{display:block;font-size:14px;color:#555;margin-top:3px;line-height:1.55}
.lt-card .lt-steps li{border-top-color:var(--hair);padding:12px 0}

/* ---------- Loop ---------- */
.loop{display:flex;flex-wrap:wrap;align-items:center;gap:10px 8px;max-width:960px}
.loop span{font-size:13px;line-height:1.4;padding:9px 14px;border:1px solid #cfc9bf;background:#fff;border-radius:24px;white-space:nowrap;color:var(--ink)}
.loop i{width:18px;height:1px;background:var(--burnt);display:inline-block;flex-shrink:0}

/* ---------- Questions and answers ---------- */
.faq{max-width:820px}
.faq details{border-top:1px solid #ddd6cb}
.faq details:last-child{border-bottom:1px solid #ddd6cb}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 0;font-size:18px;line-height:1.35;font-weight:500;min-height:44px;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-size:24px;font-weight:300;color:var(--burnt);flex-shrink:0;width:24px;text-align:center}
.faq details[open] summary::after{content:'\2013'}
.faq details>div{padding:0 0 22px;max-width:720px;font-size:15px;line-height:1.75;color:var(--ink-2)}
.faq details>div p+p,.faq details>div p+ul,.faq details>div p+ol,.faq details>div ul+p,.faq details>div ol+p{margin-top:10px}
.faq details>div .lt-steps li{padding:10px 0}
.faq summary:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.faq a{text-decoration:underline;text-underline-offset:3px}

/* ---------- Prose, note ---------- */
.prose{max-width:720px;font-size:16px;line-height:1.75;color:var(--ink-2)}
.prose p+p,.prose ul{margin-top:14px}
.prose ul li{position:relative;padding-left:22px;margin-top:8px}
.prose ul li::before{content:'';position:absolute;left:0;top:.8em;width:10px;height:1px;background:var(--orange)}
.prose strong{font-weight:600;color:var(--ink)}
.prose a{text-decoration:underline;text-underline-offset:3px}
.note,.lt-note{font-size:13.5px;line-height:1.65;max-width:640px;color:var(--ink-3)}
.note a{text-decoration:underline;text-underline-offset:3px}
.know-more{margin-top:28px}
.know-more a{display:inline-flex;align-items:center;gap:14px;font-size:14px;font-weight:600;padding:10px 0;min-height:44px;color:var(--accent)}
.know-more a svg{width:18px;height:18px}
.lt-card .know-more{margin-top:4px}

/* ---------- Four-step flow (cards joined by a drawn line) ---------- */
.svc-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px;position:relative}
.svc-flow::before{content:'';position:absolute;left:4%;right:4%;top:24px;height:1px;background:linear-gradient(90deg,var(--amber),var(--burnt));transform:scaleX(0);transform-origin:left;transition:transform 1.4s var(--ease) .2s}
.svc-flow.is-in::before{transform:scaleX(1)}
.svc-step{position:relative;background:#fff;border:1px solid var(--card-line);border-radius:16px;padding:40px 18px 18px;box-shadow:var(--shadow-sm);opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .7s var(--ease);transition-delay:calc(.3s + var(--i,0) * .35s)}
.svc-flow.is-in .svc-step{opacity:1;transform:none}
.svc-step .n{position:absolute;left:18px;top:-15px;width:30px;height:30px;border-radius:50%;background:#fff;border:1px solid var(--burnt);color:var(--accent);font-size:12px;font-weight:600;display:grid;place-items:center}
.svc-step b{display:block;font-size:16px;color:var(--ink)}
.svc-step small{display:block;font-size:13px;line-height:1.5;color:#555;margin-top:6px}

/* ---------- Three-column board ---------- */
.board{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.board .col{background:#fff;border:1px solid var(--card-line);border-radius:16px;padding:18px;box-shadow:var(--shadow-sm);opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i,0) * .25s)}
.board.is-in .col{opacity:1;transform:none}
.board h3{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.board .col:nth-child(2) h3{color:var(--ok)}.board .col:nth-child(3) h3{color:var(--warn)}
.board .col span{display:block;padding:10px 0;border-top:1px solid var(--hair);font-size:14px;color:var(--ink);line-height:1.45}

/* ---------- Closing band ---------- */
.cta-band,.lt-cta{padding:96px 0;background:var(--burnt);color:#120905}
.cta-band h2,.lt-cta h2{font-size:clamp(36px,4.4vw,64px);letter-spacing:-.03em;max-width:16ch}
.cta-band p,.lt-cta p{font-size:16px;line-height:1.8;margin-top:22px;max-width:640px}
.cta-band a:not(.button),.lt-cta a:not(.button){font-weight:600;text-decoration:underline;text-underline-offset:3px;display:inline-block;padding:6px 0}
.cta-band .actions,.lt-cta .actions{margin-top:32px}
.cta-band .button,.lt-cta .button{background:#19100b;color:#f5e4d0}
.cta-band .button:hover,.lt-cta .button:hover{background:#402318}
.cta-band .button.secondary,.lt-cta .button.secondary{background:transparent;color:#120905;border-color:#120905}
.lt-trust{margin-top:28px;font-size:14px}

/* ---------- Form ---------- */
.form{max-width:640px}
.field{display:grid;gap:8px;margin-top:22px}
.field label{font-size:13px;letter-spacing:.02em;color:var(--ink-2)}
.field .hint{font-size:12px;color:var(--ink-3)}
.field input,.field textarea{background:#fff;border:1px solid #cfc9bf;border-radius:8px;padding:13px 14px;color:var(--ink);font:inherit;font-size:16px;min-height:48px;width:100%}
.field textarea{min-height:160px;resize:vertical}
.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--orange);outline-offset:2px;border-color:var(--burnt)}
.hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.form .actions{margin-top:28px}
.form-note{margin-top:20px;padding:14px 16px;border:1px solid var(--burnt);background:#fff;border-radius:8px;font-size:14px;line-height:1.6;color:var(--ink)}
.form-note[hidden]{display:none}
.form .button{border:0}
.form .button:disabled{opacity:.6}
.form .note{margin-top:20px}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease),transform .7s var(--ease)}
.reveal.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal,.svc-step,.board .col{opacity:1;transform:none;transition:none}.svc-flow::before{transform:none;transition:none}}
.no-js .reveal,.no-js .svc-step,.no-js .board .col{opacity:1;transform:none}
.no-js .svc-flow::before{transform:none}

/* ---------- Footer (dark) ---------- */
.site-footer{padding:72px 0 40px;background:var(--black);color:var(--white);border-top:1px solid #1f2123}
.site-footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px 5%}
.site-footer .brand p{margin-top:18px;font-size:14px;line-height:1.7;color:#a8a8a8;max-width:360px}
.site-footer h3{margin:0 0 10px;font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#8d8d8d}
.site-footer .cols a{display:block;padding:8px 0;font-size:14px;color:#d6d6d6;min-height:40px;transition:color .2s}
.site-footer .cols a:hover{color:#edb48e}
.site-footer .contact-line{display:flex;flex-wrap:wrap;gap:8px 32px;align-items:center;margin-top:48px;padding-top:28px;border-top:1px solid #1f2123;font-size:14px;color:#a8a8a8}
.site-footer .contact-line a{color:#f0f0f0;padding:10px 0;min-height:44px;display:inline-flex;align-items:center;transition:color .2s}
.site-footer .contact-line a:hover{color:#edb48e}
.site-footer .legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:22px;font-size:12px;color:#8d8d8d}

/* ---------- Home: film opening ---------- */
.lt-hero{position:relative;padding:150px 0 60px;isolation:isolate;overflow:hidden}
.lt-hero::before{content:'';position:absolute;inset:-20% -10% auto;height:120%;z-index:-1;pointer-events:none;background:radial-gradient(60% 60% at 30% 20%,#f3d9c4aa,transparent 70%),radial-gradient(50% 50% at 80% 40%,#e8b77d55,transparent 70%)}
.lt-tag{font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--accent);display:flex;align-items:center;gap:6px}
.lt-owner{margin-top:48px;text-align:center}
.lt-owner.left{text-align:left;margin-top:0;margin-bottom:12px}
.lt-q{text-wrap:balance;text-align:center;font-size:clamp(34px,4.6vw,66px);line-height:1.08;letter-spacing:-.035em;font-weight:500;margin:14px auto 0;max-width:22ch;color:var(--ink)}
.q-cycle{position:relative;height:5.2em;max-width:760px;margin:34px auto 0;font-size:clamp(18px,1.9vw,26px);line-height:1.45;text-align:center;color:#555}
.q-cycle .qc{position:absolute;inset:0;margin:0;opacity:0;transform:translateY(10px);animation:qcycle 18s cubic-bezier(.2,.7,.2,1) infinite;animation-delay:calc(var(--i) * 4.5s)}
.q-cycle .qc b{color:var(--ink);font-weight:500;display:block;margin-top:4px}
@keyframes qcycle{0%{opacity:0;transform:translateY(10px)}4%{opacity:1;transform:none}22%{opacity:1;transform:none}26%{opacity:0;transform:translateY(-10px)}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.q-cycle{height:auto}.q-cycle .qc{position:static;opacity:1;transform:none;animation:none;margin-top:14px}}
.no-js .q-cycle{height:auto}.no-js .q-cycle .qc{position:static;opacity:1;transform:none;animation:none;margin-top:14px}
.lt-promise{text-wrap:balance;margin:56px auto 0;max-width:30ch;text-align:center;font-size:clamp(22px,2.6vw,36px);line-height:1.3;letter-spacing:-.025em;color:var(--ink)}
.lt-promise.connect{margin-top:36px;color:var(--accent)}
.lt-sub{margin:18px auto 0;max-width:34em;text-align:center;font-size:17px;line-height:1.65;color:var(--ink-2)}
.lt-hero .actions{justify-content:center;margin-top:30px}

/* ---------- Home: one connected view ---------- */
.lt-flow{display:grid;grid-template-columns:1fr 80px 260px;align-items:center;gap:20px;margin-top:40px}
.lt-sources{display:flex;flex-wrap:wrap;gap:10px}
.lt-sources span{background:#fff;border:1px solid var(--card-line);border-radius:12px;padding:12px 16px;font-size:14px;font-weight:600;color:var(--ink);box-shadow:0 10px 24px #2a1d0f0f}
.lt-arrow{height:1px;background:linear-gradient(90deg,var(--amber),var(--burnt));position:relative}
.lt-arrow::after{content:'';position:absolute;right:-1px;top:-5px;border:5px solid transparent;border-left-color:var(--burnt)}
.lt-centre{background:var(--ink);color:#fff;border-radius:20px;padding:22px 24px;text-align:center;box-shadow:0 24px 60px #2a1d0f33}
.lt-centre .wordmark{font-size:30px}
.lt-centre small{display:block;margin-top:6px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber)}
.lt-flow.motion .lt-sources span{opacity:0;transform:translate(var(--sx,0),var(--sy,0));transition:opacity .6s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--i) * .12s)}
.lt-flow.motion.is-in .lt-sources span{opacity:1;transform:none}
.lt-flow.motion .lt-arrow{transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease) .8s}
.lt-flow.motion.is-in .lt-arrow{transform:scaleX(1)}
.lt-flow.motion .lt-centre{opacity:0;transform:scale(.92);transition:opacity .5s var(--ease) 1.2s,transform .7s var(--ease) 1.2s}
.lt-flow.motion.is-in .lt-centre{opacity:1;transform:none}

/* ---------- Home: specialists, answer card, settlement, growth, ask ---------- */
.fn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.lt-card.fn{display:flex;flex-direction:column;gap:12px;transition-delay:calc(var(--i) * .1s)}
.lt-card.fn h3{font-size:19px}
.lt-card.fn p:last-child{font-size:14px;line-height:1.6;color:#555;margin:0}
.lt-section .answer{max-width:860px;margin-top:34px}
.lt-bar{display:flex;gap:3px;height:34px;margin-top:18px;border-radius:9px;overflow:hidden}
.lt-bar i{display:block;height:100%;width:var(--w);background:linear-gradient(90deg,#d8653a,#e78045);transform-origin:left;transform:scaleX(0);transition:transform 1s var(--ease)}
.lt-bar i:nth-child(2){background:#e9916a}.lt-bar i:nth-child(3){background:#f1b596}.lt-bar i:nth-child(4){background:#f7d4c0}
.reveal.is-in .lt-bar i{transform:scaleX(1)}
.reveal.is-in .lt-bar i:nth-child(2){transition-delay:.15s}.reveal.is-in .lt-bar i:nth-child(3){transition-delay:.3s}.reveal.is-in .lt-bar i:nth-child(4){transition-delay:.45s}
.lt-reasons{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:18px}
.lt-reasons b{display:block;font-size:34px;line-height:1;font-weight:500;color:var(--ink);letter-spacing:-.03em}
.lt-reasons b small{font-size:13px;color:var(--ink-3);margin-left:4px;font-weight:400}
.lt-reasons span{display:block;font-size:13px;color:var(--ink-2);margin-top:8px;line-height:1.4}
.lt-reasons em{display:inline-block;font-style:normal;font-size:11px;font-weight:600;color:var(--warn);background:var(--warn-bg);border-radius:10px;padding:2px 8px;margin-top:8px}
.lt-reasons>div:first-child b{color:#c84f2c}
.lt-chip.pop{opacity:0;transform:scale(.7);transition:opacity .4s var(--ease),transform .5s var(--ease);transition-delay:calc(1.1s + var(--i) * .2s)}
.reveal.is-in .lt-chip.pop,.reveal.is-in .lt-pill.pop{opacity:1;transform:none}
.lt-pill.pop{opacity:0;transform:scale(.7);transition:opacity .4s var(--ease),transform .5s var(--ease);transition-delay:calc(var(--i) * .22s)}
.lt-rows.motion li{opacity:0;transform:translateX(-10px);transition:opacity .45s var(--ease),transform .6s var(--ease);transition-delay:calc(var(--i) * .22s)}
.reveal.is-in .lt-rows.motion li{opacity:1;transform:none}
.lt-rows.motion li .ok,.lt-rows.motion li .pend{transform:scale(.6);transition:transform .45s var(--ease);transition-delay:calc(.25s + var(--i) * .22s)}
.reveal.is-in .lt-rows.motion li .ok,.reveal.is-in .lt-rows.motion li .pend{transform:none}
.lt-grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}
.lt-grid2.wide{grid-template-columns:1.3fr 1fr}
.lt-bars{display:flex;align-items:flex-end;gap:6px;height:150px;margin-top:22px}
.lt-bars i{flex:1;height:var(--h);background:#e5e0d6;border-radius:6px 6px 2px 2px;transform-origin:bottom;transform:scaleY(0);transition:transform .8s var(--ease);transition-delay:calc(var(--i) * .05s)}
.lt-bars i.lo{background:linear-gradient(180deg,#e78045,#bd6037)}
.reveal.is-in .lt-bars i{transform:scaleY(1)}
.lt-ticks{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-3);margin-top:8px}
.lt-card.campaign h3{font-size:22px;line-height:1.25;margin-top:14px}
.lt-ask{display:flex;align-items:center;gap:12px;background:#faf8f4;border:1px solid var(--card-line);border-radius:40px;padding:12px 18px;font-size:15px;color:var(--ink-2)}
.lt-ask-dot{width:14px;height:14px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 4px #e8b77d33;flex-shrink:0}
.ask-type{color:var(--ink)}
.caret{display:inline-block;width:2px;height:1.1em;background:var(--orange);margin-left:4px;vertical-align:-.15em;animation:blink 1s steps(2) infinite}
@keyframes blink{to{visibility:hidden}}
@media(prefers-reduced-motion:reduce){.caret{animation:none}.lt-flow.motion .lt-sources span,.lt-flow.motion .lt-arrow,.lt-flow.motion .lt-centre,.lt-chip.pop,.lt-pill.pop,.lt-rows.motion li,.lt-rows.motion li .ok,.lt-rows.motion li .pend,.lt-bar i,.lt-bars i{opacity:1;transform:none;transition:none}}
.no-js .lt-flow.motion .lt-sources span,.no-js .lt-flow.motion .lt-arrow,.no-js .lt-flow.motion .lt-centre,.no-js .lt-chip.pop,.no-js .lt-pill.pop,.no-js .lt-rows.motion li,.no-js .lt-rows.motion li .ok,.no-js .lt-rows.motion li .pend,.no-js .lt-bar i,.no-js .lt-bars i{opacity:1;transform:none}

/* ---------- Responsive ---------- */
@media(max-width:1100px){.page-hero{padding:150px 0 56px}.section,.lt-section{padding:80px 0}}
@media(max-width:1000px){
  .cards.three,.fn-grid{grid-template-columns:1fr 1fr}
  .lt-grid2,.lt-grid2.wide{grid-template-columns:1fr}
  .lt-two{grid-template-columns:1fr;gap:28px}
  .section .shell.lt-two>*+*{margin-top:0}
  .lt-flow{grid-template-columns:1fr;gap:16px}
  .lt-arrow{width:1px;height:40px;margin:0 auto;background:linear-gradient(180deg,var(--amber),var(--burnt))}
  .lt-arrow::after{right:auto;left:-5px;top:auto;bottom:-1px;border:5px solid transparent;border-top-color:var(--burnt)}
  .svc-flow{grid-template-columns:1fr 1fr}
  .svc-flow::before{display:none}
  .board{grid-template-columns:1fr}
}
@media(max-width:800px){
  .cards.two{grid-template-columns:1fr}
  .site-footer .cols{grid-template-columns:1fr 1fr;gap:34px 8%}
  .site-footer .brand{grid-column:1/-1}
}
@media(max-width:650px){
  .page-hero{padding:120px 0 48px}
  .page-hero h1{font-size:clamp(34px,10vw,44px)}
  .page-hero .lede{font-size:17px;margin-top:20px}
  .section,.lt-section{padding:64px 0}
  .section h2,.lt-section h2{font-size:clamp(26px,7.6vw,32px)}
  .section .shell>*+*{margin-top:26px}
  .cards.three,.fn-grid,.svc-flow{grid-template-columns:1fr}
  .cards{gap:14px}
  .lt-card{padding:18px}
  .kv>div{grid-template-columns:1fr;gap:4px;padding:12px 0}
  .kv dt{padding-top:0}
  .lt-card .kv>div{grid-template-columns:1fr;gap:2px}
  .lt-steps li{grid-template-columns:30px 1fr;gap:12px}
  .lt-steps .n{width:26px;height:26px;font-size:11px}
  .faq summary{font-size:16px;padding:16px 0}
  .cta-band,.lt-cta{padding:64px 0}
  .cta-band h2,.lt-cta h2{font-size:clamp(30px,9vw,38px)}
  .lt-hero{padding:112px 0 40px}
  .lt-q{font-size:clamp(28px,8vw,34px)}
  .lt-q br{display:none}
  .q-cycle{height:7.4em;font-size:17px}
  .lt-promise{font-size:22px;margin-top:40px}
  .lt-owner{margin-top:36px}
  .lt-reasons{grid-template-columns:1fr 1fr;gap:14px}
  .lt-reasons b{font-size:28px}
  .lt-bars{height:110px}
  .lt-tasks .lt-chip{white-space:normal}
  .lt-rows li{flex-wrap:wrap}
  .site-footer{padding:56px 0 32px}
  .site-footer .cols{grid-template-columns:1fr;gap:26px}
  .site-footer .contact-line{margin-top:36px;flex-direction:column;align-items:flex-start;gap:0}
  .site-footer .legal{flex-direction:column}
}
