:root {
  --bg: #08090B;
  --bg-soft: #111316;
  --surface: rgba(255,255,255,.055);
  --surface-strong: rgba(255,255,255,.09);
  --text: #F7F2EA;
  --muted: #B9B0A4;
  --subtle: #81776C;
  --line: rgba(255,255,255,.12);
  --primary: #C58B4A;
  --violet: #E1B66A;
  --accent: #C58B4A;
  --accent-2: #E1B66A;
  --accent-glow: rgba(197,139,74,.30);
  --lime: #8EA371;
  --lime-ink: #172012;
  --white: #fff;
  --shadow: 0 22px 60px rgba(0,0,0,.34);
  --radius: 18px;
  --shell: min(1200px, calc(100% - 48px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; font-family: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: var(--bg); color: var(--text); line-height: 1.55; overflow-x: hidden; }
html[data-theme="light"] {
  --bg: #F8F3EA;
  --bg-soft: #EFE7D9;
  --surface: rgba(70,47,28,.055);
  --surface-strong: rgba(70,47,28,.095);
  --text: #171310;
  --muted: #685D51;
  --subtle: #8A7D70;
  --line: rgba(59,42,25,.14);
  --primary: #A97137;
  --violet: #C9954E;
  --accent: #A97137;
  --accent-2: #C9954E;
  --accent-glow: rgba(169,113,55,.18);
  --lime: #6E8157;
  --lime-ink: #10170E;
  --white:#fff;
  --shadow:0 18px 50px rgba(74,52,29,.13);
}
button, input, textarea, select { font: inherit; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
img { max-width: 100%; }
.shell { width: var(--shell); margin-inline: auto; }
.section { padding: 130px 0; }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 2000; background: var(--accent); color: #17051f; font-weight: 800; padding: 10px 14px; transform: translateY(-160%); border-radius: 10px; }
.skip-link:focus { transform: translateY(0); }

.site-loader { position: fixed; inset: 0; z-index: 3000; display: grid; place-content: center; gap: 14px; background: #08090B; color: white; transition: opacity .5s ease, visibility .5s ease; }
.site-loader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }
.loader-mark { display: flex; justify-content: center; align-items: center; font-size: 44px; line-height: 1; font-weight: 900; letter-spacing: -15px; background: linear-gradient(135deg,#fff 0%,#F1D39D 40%,#C58B4A 100%); -webkit-background-clip: text; background-clip: text; color: transparent; animation: loaderPulse 1.1s ease-in-out infinite alternate; }
.loader-mark span:last-child { transform: translateX(-6px); }
.loader-line { height: 2px; width: 134px; margin: 0 auto; background: linear-gradient(90deg,transparent,#DAB36E,transparent); animation: loaderSweep 1.2s ease-in-out infinite; }
.site-loader p { margin: 0; font-size: 9px; letter-spacing: 2px; text-align: center; color: #cdbbd4; }
@keyframes loaderPulse { from { filter: drop-shadow(0 0 0 rgba(225,112,255,0)); transform: scale(.97); } to { filter: drop-shadow(0 0 16px rgba(225,112,255,.72)); transform: scale(1.04); } }
@keyframes loaderSweep { 0%,100% { transform: scaleX(.3); opacity: .35; } 50% { transform: scaleX(1); opacity: 1; } }

.site-header { position: fixed; z-index: 1000; top: 0; left: 0; right: 0; height: 84px; padding: 0 max(24px, calc((100vw - 1200px)/2)); display: flex; align-items: center; justify-content: space-between; gap: 28px; transition: background .35s, border .35s, backdrop-filter .35s, height .35s; }
.site-header.scrolled { height: 70px; background: color-mix(in srgb, var(--bg) 82%, transparent); border-bottom: 1px solid var(--line); backdrop-filter: blur(16px); }
.brand { height: 48px; display: inline-flex; align-items: center; color: var(--text); }
.brand img { width: 196px; height: auto; display: block; }
.desktop-nav { display: flex; gap: 22px; align-items: center; margin-left: auto; }
.desktop-nav a { color: color-mix(in srgb,var(--text) 75%,transparent); font-size: 13px; font-weight: 650; transition: color .2s; }
.desktop-nav a:hover { color: var(--text); }
.header-actions { display: flex; align-items: center; gap: 11px; }
.theme-toggle { display: grid; grid-template-columns: 1fr 1fr; align-items: center; width: 58px; height: 33px; padding: 3px; border: 1px solid rgba(255,255,255,.17); border-radius: 999px; background: rgba(6,5,10,.34); color: #fff; position: relative; overflow: hidden; }
.theme-toggle:before { content:""; width: 25px; height: 25px; border-radius: 50%; background: linear-gradient(135deg,#fff,#F6DCB2); position:absolute; inset: 3px auto 3px 3px; transition: transform .28s ease; }
.theme-icon { position: relative; z-index: 1; font-size: 14px; line-height:1; color:#281037; }
.theme-icon-moon { color:#fff; }
html[data-theme="light"] .theme-toggle { background: rgba(77,28,110,.08); border-color: rgba(77,28,110,.2); }
html[data-theme="light"] .theme-toggle:before { transform: translateX(25px); background: linear-gradient(135deg,#A97137,#7A4D25); }
html[data-theme="light"] .theme-icon-sun { color:#3a1659; }
html[data-theme="light"] .theme-icon-moon { color:#fff; }
.button { min-height: 48px; padding: 0 19px; border: 1px solid transparent; border-radius: 999px; display: inline-flex; gap: 9px; align-items: center; justify-content: center; font-size: 13px; font-weight: 800; letter-spacing: -.1px; transition: transform .25s ease, box-shadow .25s ease, border .25s ease, background .25s ease; }
.button:hover { transform: translateY(-2px); }
.button span { font-size: 17px; line-height: 1; margin-top: -1px; }
.button-primary { color: #1A120B; background: linear-gradient(110deg,#FFF4DD 0%,#D6A75D 45%,#9A6531 100%); box-shadow: 0 10px 30px rgba(205,84,246,.28); }
.button-primary:hover { box-shadow: 0 14px 40px rgba(205,84,246,.46); }
.button-small { min-height: 39px; padding: 0 15px; font-size: 12px; }
.button-ghost { color: var(--text); border-color: var(--line); background: rgba(255,255,255,.025); }
.button-ghost:hover { border-color: color-mix(in srgb,var(--accent) 58%,var(--line)); background: var(--surface); }
.button-light { color:#1d0823; background: #fff; box-shadow: 0 8px 28px rgba(0,0,0,.18); }
.button-light:hover { box-shadow: 0 13px 36px rgba(0,0,0,.28); }
.button-large { min-height: 57px; padding-inline: 23px; font-size: 14px; }
.menu-toggle { display: none; width: 40px; height: 40px; padding: 0; border: 1px solid var(--line); background: var(--surface); border-radius: 50%; position: relative; }
.menu-toggle span { position: absolute; left: 11px; right: 11px; height: 1.5px; background: var(--text); transition: transform .25s; }
.menu-toggle span:first-child { transform: translateY(-4px); }.menu-toggle span:last-child { transform: translateY(4px); }
.menu-toggle.is-open span:first-child { transform: rotate(45deg); }.menu-toggle.is-open span:last-child { transform: rotate(-45deg); }
.mobile-menu { position: fixed; inset: 70px 14px auto 14px; z-index: 990; padding: 18px; border:1px solid var(--line); background: color-mix(in srgb,var(--bg) 93%,transparent); backdrop-filter:blur(20px); border-radius:20px; box-shadow: var(--shadow); }
.mobile-menu:not([hidden]) { display:grid; gap:4px; animation: menuIn .25s ease both; }
.mobile-menu a { padding: 12px 9px; font-weight: 700; color: var(--muted); }.mobile-menu .button { margin-top: 8px; }
@keyframes menuIn { from { opacity:0; transform:translateY(-10px) scale(.98);} to{opacity:1;transform:none;} }

.hero { min-height: min(900px, 100svh); height: max(700px, 100svh); isolation:isolate; position:relative; overflow:hidden; display:flex; align-items:center; }
.hero-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-4; opacity:.95; }
.hero-shade { position:absolute; inset:0; z-index:-3; background: linear-gradient(90deg, rgba(6,5,9,.94) 0%,rgba(6,5,9,.77) 38%,rgba(6,5,9,.17) 78%), linear-gradient(0deg,rgba(6,5,9,.86) 0%,transparent 36%); }
.hero-grid { position:absolute; z-index:-2; inset: 0; opacity:.26; background-image: linear-gradient(rgba(240,208,255,.16) 1px,transparent 1px), linear-gradient(90deg,rgba(240,208,255,.16) 1px,transparent 1px); background-size: 90px 90px; mask-image: linear-gradient(90deg,#000 0%,transparent 75%); }
html[data-theme="light"] .hero-video { opacity:.55; }.hero::after { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background: radial-gradient(circle at 30% 35%,rgba(210,103,255,.08),transparent 32%); }
html[data-theme="light"] .hero-shade { background:linear-gradient(90deg,rgba(246,243,251,.98) 0%,rgba(246,243,251,.86) 45%,rgba(246,243,251,.45) 76%),linear-gradient(0deg,rgba(246,243,251,.86) 0%,transparent 40%); }.hero-inner { padding-top:100px; }
.eyebrow,.section-kicker { display:flex; align-items:center; gap:10px; font-size:10px; font-weight:850; letter-spacing:1.8px; color: var(--muted); }.eyebrow span { display:inline-block; width:28px; height:1px; background:var(--accent); }
.hero h1 { max-width: 850px; margin: 19px 0 24px; font-size: clamp(3rem,6.2vw,7rem); line-height:.91; letter-spacing:-.075em; font-weight:840; text-wrap:balance; }.hero h1 span { display:inline; }.hero h1 em,.display-title em,.statement-title em,.contact-copy em { font-family: Georgia, "Times New Roman", serif; font-weight:400; font-style:italic; letter-spacing:-.07em; color:#f1b1ff; }
html[data-theme="light"] .hero h1 em { color:#9329b9; }
.hero-copy { max-width:550px; margin:0; font-size: clamp(15px,1.35vw,18px); line-height:1.55; color:#d0c6d8; }.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }.hero-meta { display:flex; gap: 28px; margin-top: clamp(50px,8vh,92px); }.hero-meta div { display:grid; gap:3px; }.hero-meta strong { font-size: 12px; letter-spacing:.1px; }.hero-meta span { font-size:11px; color:#b9afc4; }.hero-scroll { position:absolute; bottom:24px; left:max(24px,calc((100vw - 1200px)/2)); display:flex; align-items:center; gap:10px; color:#c1b5c8; font-size:10px; font-weight:800; letter-spacing:1px; text-transform:uppercase; }.hero-scroll span { display:block; width:7px; height:7px; border-radius:50%; background:var(--accent); box-shadow:0 0 18px var(--accent); animation: scrollBlink 1.8s ease-in-out infinite; }@keyframes scrollBlink{50%{opacity:.25;transform:scale(.68)}}

.section-kicker span { color:var(--accent); font-weight:900; }
.intro-grid { display:grid; grid-template-columns: 1.3fr .76fr; gap: 80px; margin-top:30px; align-items:end; }.display-title { margin:0; font-size:clamp(2.35rem,4.3vw,5rem); line-height:.97; letter-spacing:-.065em; font-weight:820; text-wrap:balance; }.intro-copy { max-width:470px; color:var(--muted); font-size:15px; }.intro-copy p:first-child { margin-top:0; }.service-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:74px; border-top:1px solid var(--line); border-left:1px solid var(--line); }.service-card { min-height:260px; padding:24px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); position:relative; background:linear-gradient(140deg,transparent,var(--surface)); transition:background .3s,transform .3s; overflow:hidden; }.service-card:before{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,var(--accent-glow),transparent 68%);right:-70px;bottom:-80px;opacity:0;transition:opacity .3s;}.service-card:hover{transform:translateY(-5px);background:var(--surface-strong);}.service-card:hover:before{opacity:1;}.service-no{font-size:11px;color:var(--accent);font-weight:850;letter-spacing:1px;}.service-card h3{font-size:21px;letter-spacing:-.045em;margin:62px 0 10px;position:relative;}.service-card p{font-size:13px;color:var(--muted);margin:0;position:relative;}.service-arrow{position:absolute;right:22px;top:22px;font-size:20px;color:var(--accent);transition:transform .25s;}.service-card:hover .service-arrow{transform:translate(4px,-4px)}

.statement-band { padding: 35px 0; overflow:hidden; }.statement-inner { padding: 90px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); position:relative; }.statement-inner:before { content:""; position:absolute; width:480px; height:480px; border-radius:50%; background:radial-gradient(circle,rgba(225,182,106,.22),transparent 64%); top:50%;left:52%;filter:blur(10px); transform:translate(-50%,-50%); pointer-events:none; }.statement-top { margin:0 0 20px; color:var(--muted); font-size:12px; font-weight:750; letter-spacing:.2px; }.statement-title { position:relative; margin:0; font-size:clamp(3.2rem,8.2vw,9.4rem); line-height:.78; letter-spacing:-.092em; font-weight:900; }.statement-title span{color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--text) 65%,transparent);}.statement-title em{color:#f4c1ff;}

.work-heading { display:grid; grid-template-columns:.7fr 1.1fr; gap:60px; align-items:start; }.work-intro p { margin:19px 0 0; max-width:480px; color:var(--muted); font-size:14px; }.work-grid { margin-top:64px; display:grid; grid-template-columns:1.18fr .82fr .82fr; grid-auto-rows:220px; gap:14px; }.work-card { position:relative; display:block; overflow:hidden; background:#1b1025; border-radius:15px; border:1px solid var(--line); }.work-card-large { grid-row:span 2; }.work-card-wide { grid-column:span 2; }.work-card img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .5s; }.work-card::after { content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(4,2,8,.88) 100%); }.work-card:hover img{transform:scale(1.065);filter:saturate(1.15);}.work-overlay{position:absolute;z-index:1;left:20px;right:20px;bottom:17px;display:grid;gap:4px;}.work-overlay span{font-size:9px;text-transform:uppercase;letter-spacing:1.35px;color:#ebd4f1;}.work-overlay strong{font-size:15px;letter-spacing:-.035em;}.work-overlay i{position:absolute;right:0;bottom:0;color:#fff;font-style:normal;font-size:18px;transition:transform .25s;}.work-card:hover .work-overlay i{transform:translate(3px,-3px)}.work-note{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:12px;color:var(--muted);}.note-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px var(--accent);flex:none;}

.process-section { background:var(--bg-soft); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.process-head { display:flex;justify-content:space-between;align-items:flex-end;gap:50px; }.process-list { list-style:none;padding:0;margin:75px 0 0;border-top:1px solid var(--line); }.process-list li { display:grid;grid-template-columns:100px 1fr;gap:30px;padding:25px 0 27px;border-bottom:1px solid var(--line); }.process-list li>span { color:var(--accent);font-size:12px;font-weight:850;letter-spacing:1.4px; }.process-list h3{margin:0;font-size:clamp(1.4rem,2.5vw,2.2rem);letter-spacing:-.055em;}.process-list p{margin:8px 0 0;color:var(--muted);max-width:580px;font-size:14px;}

.pricing-head{display:grid;grid-template-columns:.72fr 1.1fr;gap:60px;align-items:start}.pricing-title-wrap>p{margin:18px 0 0;max-width:550px;color:var(--muted);font-size:14px}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:62px}.price-card{min-height:610px;position:relative;padding:28px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(160deg,var(--surface),transparent 70%);display:flex;flex-direction:column;transition:transform .3s,border .3s,box-shadow .3s}.price-card:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--accent) 54%,var(--line));box-shadow:var(--shadow)}.price-card-featured{border-color:rgba(235,120,255,.52);background:linear-gradient(155deg,rgba(228,105,255,.16),var(--surface) 58%,transparent)}.featured-chip{position:absolute;right:18px;top:18px;border-radius:999px;background:linear-gradient(105deg,#F2D5A2,#B87836);padding:5px 8px;color:#1B120A;font-size:8px;font-weight:900;letter-spacing:.9px}.plan-label{font-size:9px;font-weight:900;letter-spacing:1.5px;color:var(--accent)}.price-card h3{margin:28px 0 4px;font-size:clamp(2rem,3vw,2.75rem);letter-spacing:-.075em}.price{margin:0;font-size:27px;font-weight:800;letter-spacing:-.05em}.plan-summary{min-height:50px;margin:27px 0 19px;color:var(--muted);font-size:14px}.price-card ul{list-style:none;padding:0;margin:0;display:grid;gap:13px;font-size:12px;color:color-mix(in srgb,var(--text) 82%,transparent);}.price-card li{display:flex;gap:9px;align-items:flex-start;}.price-card li:before{content:"✓";color:var(--accent);font-weight:900;}.button-card{margin-top:auto;border-color:var(--line);color:var(--text);background:transparent}.button-card:hover{background:var(--surface-strong);border-color:var(--accent)}.pricing-footnote{margin:18px 0 0;color:var(--subtle);font-size:11px;max-width:860px}

.trust-section{background:linear-gradient(130deg,#160b24 0%,#0b0811 48%,#15091f 100%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}html[data-theme="light"] .trust-section{background:linear-gradient(135deg,#EAE1D2,#F8F3EA 52%,#EAE1D2)}.trust-grid{display:grid;grid-template-columns:1fr .9fr;gap:100px;align-items:start}.trust-copy>p{margin:22px 0 0;color:var(--muted);max-width:480px;font-size:15px}.trust-list{display:grid;gap:0;border-top:1px solid var(--line)}.trust-item{display:grid;grid-template-columns:36px 1fr;gap:14px;padding:24px 0;border-bottom:1px solid var(--line)}.trust-item>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(223,114,255,.16);color:#f0c1ff;font-size:14px}.trust-item h3{margin:0;font-size:16px;letter-spacing:-.035em}.trust-item p{margin:5px 0 0;color:var(--muted);font-size:13px}

.faq-head{display:flex;justify-content:space-between;gap:40px;align-items:end}.faq-list{margin-top:64px;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line);padding:0}.faq-item summary{list-style:none;display:flex;justify-content:space-between;gap:20px;padding:24px 0;font-size:clamp(1.05rem,1.9vw,1.45rem);font-weight:750;letter-spacing:-.04em;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{color:var(--accent);font-weight:400;transition:transform .25s}.faq-item[open] summary span{transform:rotate(45deg)}.faq-item p{max-width:670px;margin:0;padding:0 0 25px;color:var(--muted);font-size:14px}

.contact-section{position:relative;overflow:hidden;background:#a346d8;color:#fff}.contact-glow{position:absolute;inset:-30%;background:radial-gradient(circle at 74% 42%,rgba(255,255,255,.54) 0,rgba(255,255,255,.12) 18%,transparent 46%),radial-gradient(circle at 20% 100%,rgba(48,6,72,.48),transparent 48%);filter:blur(8px)}.contact-section:before{content:"";position:absolute;inset:0;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.4) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(130deg,transparent 20%,#000 75%)}.contact-inner{position:relative;z-index:1;padding:120px 0;display:flex;justify-content:space-between;align-items:end;gap:60px}.contact-overline{font-size:10px;font-weight:900;letter-spacing:1.8px;margin:0 0 18px}.contact-copy h2{max-width:700px;margin:0;font-size:clamp(3rem,5.8vw,6.7rem);line-height:.88;letter-spacing:-.075em}.contact-copy h2 em{color:#fff}.contact-copy>p:last-child{margin:22px 0 0;max-width:460px;color:rgba(255,255,255,.84);font-size:15px}.contact-actions{display:grid;align-items:start;gap:10px;min-width:230px}.contact-email{font-size:12px;color:#fff;text-decoration:underline;text-underline-offset:3px;opacity:.88;text-align:center}.site-footer{padding:68px 0 30px;background:var(--bg)}.footer-grid{display:grid;grid-template-columns:1.35fr .55fr .65fr .65fr;gap:35px}.footer-brand img{width:205px;color:var(--text)}.footer-brand p{margin:14px 0 0;max-width:270px;color:var(--muted);font-size:12px}.footer-links{display:grid;align-content:start;gap:8px;font-size:12px}.footer-links span{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;font-weight:850;color:var(--subtle);margin-bottom:5px}.footer-links a,.footer-button{color:var(--muted);transition:color .2s;text-align:left;background:transparent;border:0;padding:0;font:inherit}.footer-links a:hover,.footer-button:hover{color:var(--accent)}.footer-legal{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;margin-top:26px;color:var(--subtle);font-size:10px}.footer-legal p{margin:0}
.whatsapp-float{position:fixed;z-index:900;right:18px;bottom:18px;display:flex;align-items:center;gap:7px;height:43px;padding:0 14px;border-radius:999px;background:#25d366;color:#052c19;box-shadow:0 12px 30px rgba(0,0,0,.28);font-size:12px;font-weight:850;transition:transform .25s,box-shadow .25s}.whatsapp-float span{font-size:17px}.whatsapp-float:hover{transform:translateY(-4px);box-shadow:0 16px 36px rgba(0,0,0,.38)}

.project-modal{width:min(690px,calc(100% - 28px));max-height:min(840px,calc(100svh - 28px));overflow:auto;padding:25px;border:1px solid var(--line);border-radius:22px;background:var(--bg-soft);color:var(--text);box-shadow:0 30px 100px rgba(0,0,0,.5)}.project-modal::backdrop{background:rgba(4,3,8,.72);backdrop-filter:blur(7px)}.modal-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.modal-eyebrow{margin:0;color:var(--accent);font-size:9px;letter-spacing:1.5px;font-weight:900}.modal-top h2{margin:5px 0 0;font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.07em}.modal-close{border:1px solid var(--line);border-radius:50%;width:38px;height:38px;background:transparent;color:var(--text);font-size:28px;line-height:1}.modal-copy{color:var(--muted);font-size:13px;margin:16px 0 22px}.project-modal form{display:grid;gap:13px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.project-modal label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.3px}.project-modal input,.project-modal textarea,.project-modal select{width:100%;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 12px;outline:none;font-size:13px;font-weight:550;letter-spacing:0;transition:border .2s,box-shadow .2s}.project-modal textarea{resize:vertical;line-height:1.45}.project-modal select option{background:var(--bg-soft);color:var(--text)}.project-modal input:focus,.project-modal textarea:focus,.project-modal select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(225,182,106,.12)}.form-note{margin:0;color:var(--subtle);font-size:10px}.button-submit{width:100%;margin-top:3px}

.reveal{opacity:0;transform:translateY(16px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}.hero .reveal{transition-delay:.1s}.hero .reveal:nth-child(2){transition-delay:.17s}.hero .reveal:nth-child(3){transition-delay:.24s}.hero .reveal:nth-child(4){transition-delay:.3s}.hero .reveal:nth-child(5){transition-delay:.36s}

@media (max-width: 960px){.desktop-nav{display:none}.menu-toggle{display:block}.brand img{width:178px}.section{padding:100px 0}.hero{height:auto;min-height:760px}.hero-meta{gap:18px}.intro-grid,.work-heading,.pricing-head,.trust-grid{grid-template-columns:1fr;gap:25px}.service-grid{grid-template-columns:repeat(2,1fr)}.work-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.work-card-large{grid-row:span 2}.work-card-wide{grid-column:span 2}.pricing-grid{grid-template-columns:1fr;max-width:560px}.price-card{min-height:unset}.plan-summary{min-height:unset}.process-head,.faq-head{display:grid;gap:24px}.contact-inner{display:grid;align-items:start;padding:100px 0}.contact-actions{width:min(310px,100%)}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-legal{flex-direction:column}.hero h1{max-width:680px}.hero-video{object-position:64% center}.hero-shade{background:linear-gradient(90deg,rgba(6,5,9,.93),rgba(6,5,9,.74) 50%,rgba(6,5,9,.28)),linear-gradient(0deg,rgba(6,5,9,.87),transparent 40%)}html[data-theme="light"] .hero-shade{background:linear-gradient(90deg,rgba(246,243,251,.98),rgba(246,243,251,.88) 55%,rgba(246,243,251,.55)),linear-gradient(0deg,rgba(246,243,251,.84),transparent 42%)}}
@media (max-width: 620px){:root{--shell:min(100% - 32px,1200px)}.site-header{height:70px;padding:0 16px;gap:10px}.site-header.scrolled{height:64px}.brand img{width:150px}.header-actions{gap:7px}.header-actions .button-small{display:none}.theme-toggle{width:52px}.hero{min-height:720px}.hero-inner{padding-top:88px}.hero h1{font-size:clamp(3.2rem,14vw,5.1rem);line-height:.9}.hero-copy{font-size:15px;max-width:360px}.hero-meta{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:48px}.hero-meta div:last-child{grid-column:1/-1}.hero-scroll{left:16px;bottom:20px}.hero-video{object-position:68% center}.hero-grid{background-size:54px 54px;opacity:.18}.section{padding:74px 0}.intro-grid{margin-top:25px}.display-title{font-size:clamp(2.55rem,11.5vw,4rem)}.service-grid{margin-top:46px;grid-template-columns:1fr}.service-card{min-height:200px}.service-card h3{margin-top:40px}.statement-inner{padding:68px 0}.statement-title{font-size:clamp(3.5rem,14.3vw,5.7rem)}.statement-title span{-webkit-text-stroke:.75px color-mix(in srgb,var(--text) 65%,transparent)}.work-grid{margin-top:40px;grid-template-columns:1fr;grid-auto-rows:225px}.work-card-large,.work-card-wide{grid-column:span 1;grid-row:span 1}.work-card-large{min-height:330px}.process-list{margin-top:45px}.process-list li{grid-template-columns:52px 1fr;gap:13px;padding:22px 0}.process-list h3{font-size:1.55rem}.pricing-grid{margin-top:40px}.price-card{padding:24px}.trust-grid{gap:46px}.faq-list{margin-top:40px}.contact-inner{padding:78px 0}.contact-copy h2{font-size:clamp(3.1rem,13vw,5.5rem)}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-brand{grid-column:auto}.whatsapp-float{right:13px;bottom:13px;height:41px;padding:0 12px}.form-row{grid-template-columns:1fr}.project-modal{padding:20px;border-radius:17px}.mobile-menu{inset:65px 10px auto}.button{min-height:46px}.work-overlay{left:15px;right:15px;bottom:14px}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.site-loader,.loader-mark,.loader-line,.hero-scroll span,.reveal,.work-card img,.button,.service-card,.whatsapp-float,.theme-toggle:before{animation:none!important;transition:none!important}.hero-video{display:none}.hero{background-image:url("assets/hero-poster.jpg");background-size:cover;background-position:center}.reveal{opacity:1;transform:none}}


/* v2 polish: leave enough space beneath the fixed header and anchor every plan CTA cleanly. */
.hero { align-items:flex-start; padding-top:84px; }
.hero-inner { padding-top:clamp(78px,11vh,132px); padding-bottom:110px; }
.price-card { min-height:628px; }
.price-card .button { margin-top:auto; flex:0 0 auto; }
.price-card ul { padding-bottom:24px; }
@media (max-width:960px){
  .hero { padding-top:84px; }
  .hero-inner { padding-top:82px; padding-bottom:110px; }
  .price-card { min-height:unset; }
}
@media (max-width:620px){
  .hero { padding-top:70px; }
  .hero-inner { padding-top:88px; padding-bottom:96px; }
  .price-card ul { padding-bottom:20px; }
}

/* v3 cursor-reactive polish */
.hero{
  --mx:50%;
  --my:35%;
}
.hero::after{
  content:"";
  position:absolute;
  inset:-12%;
  pointer-events:none;
  background:
    radial-gradient(circle at var(--mx) var(--my), rgba(233,154,255,.22), transparent 18%),
    radial-gradient(circle at calc(var(--mx) + 6%) calc(var(--my) + 4%), rgba(124,79,255,.12), transparent 26%);
  mix-blend-mode:screen;
  opacity:.9;
  transition:opacity .25s ease;
}
.hero-video,
.hero-grid,
.hero-shade{
  will-change:transform;
  transition:transform .22s ease-out;
}
.hero-video{transform:translate3d(0,0,0) scale(1.02)}
.service-card,
.work-card,
.price-card{
  transform-style:preserve-3d;
  will-change:transform, box-shadow;
  transition:transform .18s ease, box-shadow .18s ease, border-color .2s ease, background .2s ease;
}
.service-card > *,
.work-card > *,
.price-card > *{
  transform:translateZ(1px);
}
@media (hover:none), (pointer:coarse), (prefers-reduced-motion:reduce){
  .hero::after{display:none}
  .hero-video,.hero-grid,.hero-shade,.service-card,.work-card,.price-card{transform:none!important}
}
.service-card,
.work-card,
.price-card{position:relative;overflow:hidden}
.service-card::after,
.work-card::after,
.price-card::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at var(--gx,50%) var(--gy,50%), rgba(255,255,255,.12), transparent 34%);
  opacity:var(--gopacity,0);
  transition:opacity .18s ease;
}

/* v4 premium interactions + richer loading screen */
.site-loader{
  position:fixed;
  inset:0;
  z-index:1400;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 30% 30%, rgba(181,107,255,.18), transparent 30%), radial-gradient(circle at 72% 68%, rgba(103,43,203,.2), transparent 28%), #09070f;
  overflow:hidden;
}
.site-loader.is-hidden{opacity:0;pointer-events:none;transition:opacity .65s ease, visibility .65s ease;visibility:hidden}
.loader-backdrop{
  position:absolute;inset:0;
  background:linear-gradient(135deg, rgba(255,255,255,.04), transparent 36%), linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0));
  mask-image:radial-gradient(circle at center, #000 52%, transparent 100%);
  opacity:.9;
}
.loader-content{
  position:relative;z-index:2;
  width:min(92vw, 760px);
  padding:34px 28px;
  text-align:center;
  border:1px solid rgba(255,255,255,.09);
  border-radius:28px;
  background:linear-gradient(180deg, rgba(22,16,34,.78), rgba(12,9,20,.72));
  box-shadow:0 20px 80px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(10px);
}
.loader-kicker{margin:10px 0 10px;font-size:11px;font-weight:900;letter-spacing:2px;color:#D9C6A6}
.loader-title{margin:0 auto;max-width:620px;font-size:clamp(2rem,5vw,4rem);line-height:.94;letter-spacing:-.07em;color:#fff}
.loader-sub{margin:16px auto 0;max-width:520px;font-size:14px;line-height:1.55;color:rgba(255,255,255,.72)}
.loader-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:20px 0 18px}
.loader-tags span{padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);font-size:10px;font-weight:900;letter-spacing:1.2px;color:#E8D6B8}
.loader-line-wrap{width:min(100%,430px);height:8px;margin:0 auto;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.loader-line{height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#C58B4A,#E1B66A,#C58B4A);box-shadow:0 0 18px rgba(216,107,255,.45);animation:loaderFill 5s linear forwards}
.loader-status{margin:14px 0 0;font-size:11px;font-weight:800;letter-spacing:1.2px;color:rgba(255,255,255,.6)}
.loader-ornament{position:absolute;border-radius:32px;filter:blur(0px);background:linear-gradient(135deg, rgba(214,167,93,.8), rgba(128,84,43,.35));box-shadow:0 18px 40px rgba(86,57,32,.28), inset 0 1px 0 rgba(255,255,255,.2);opacity:.7;animation:floatSlow 6s ease-in-out infinite}
.loader-ornament-a{width:180px;height:180px;top:12%;left:10%;transform:rotate(28deg)}
.loader-ornament-b{width:110px;height:110px;right:12%;bottom:16%;border-radius:26px;animation-delay:-2s;transform:rotate(-18deg)}
@keyframes loaderFill{from{width:0}to{width:100%}}
@keyframes floatSlow{0%,100%{translate:0 0}50%{translate:0 -16px}}
html[data-theme="light"] .site-loader{background:radial-gradient(circle at 30% 30%, rgba(225,182,106,.15), transparent 30%), radial-gradient(circle at 72% 68%, rgba(212,190,155,.18), transparent 28%), #f4effa}
html[data-theme="light"] .loader-content{background:linear-gradient(180deg, rgba(255,255,255,.74), rgba(242,237,248,.8)); border-color:rgba(103,69,145,.12); box-shadow:0 20px 80px rgba(124,78,161,.18), inset 0 1px 0 rgba(255,255,255,.5)}
html[data-theme="light"] .loader-title{color:#171310}
html[data-theme="light"] .loader-sub{color:rgba(20,11,32,.68)}
html[data-theme="light"] .loader-status{color:rgba(20,11,32,.56)}
html[data-theme="light"] .loader-tags span{background:rgba(165,123,75,.08);border-color:rgba(165,123,75,.16);color:#6E4B2A}

.hero-float-mark{
  position:absolute;right:clamp(40px,7vw,92px);top:clamp(110px,18vh,180px);z-index:3;
  width:clamp(120px,12vw,170px);aspect-ratio:1/1;display:grid;place-items:center;
  border-radius:28px;background:linear-gradient(180deg, rgba(17,12,27,.82), rgba(17,12,27,.58));
  border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 44px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(10px);transform-style:preserve-3d;transition:transform .22s ease-out, opacity .3s ease;
}
.hero-float-mark::before{
  content:"Trusted visual direction";position:absolute;left:50%;bottom:-16px;translate:-50% 100%;padding:8px 12px;border-radius:999px;
  background:rgba(10,7,17,.56);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);color:#fff;font-size:10px;font-weight:800;letter-spacing:1.1px;white-space:nowrap;
}
.hero-float-mark img{width:80%;height:auto;display:block;filter:drop-shadow(0 8px 18px rgba(186,95,255,.2))}
html[data-theme="light"] .hero-float-mark{background:linear-gradient(180deg, rgba(255,255,255,.76), rgba(241,236,248,.7));border-color:rgba(107,65,156,.12);box-shadow:0 18px 40px rgba(107,65,156,.14), inset 0 1px 0 rgba(255,255,255,.55)}
html[data-theme="light"] .hero-float-mark::before{background:rgba(255,255,255,.78);color:#4d2575;border-color:rgba(107,65,156,.12)}

html.has-custom-cursor,
html.has-custom-cursor body,
html.has-custom-cursor a,
html.has-custom-cursor button,
html.has-custom-cursor .service-card,
html.has-custom-cursor .work-card,
html.has-custom-cursor .price-card,
html.has-custom-cursor summary,
html.has-custom-cursor .whatsapp-float{cursor:none !important}
.cursor-glow,
.cursor-ring,
.cursor-dot{position:fixed;top:0;left:0;pointer-events:none;z-index:1600;opacity:0;transition:opacity .25s ease, transform .08s linear}
.has-custom-cursor .cursor-glow,
.has-custom-cursor .cursor-ring,
.has-custom-cursor .cursor-dot{opacity:1}
.cursor-glow{width:220px;height:220px;margin:-110px 0 0 -110px;border-radius:50%;background:radial-gradient(circle, rgba(225,182,106,.18), rgba(225,182,106,.06) 34%, transparent 68%);mix-blend-mode:screen;filter:blur(10px)}
.cursor-ring{width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.02);backdrop-filter:blur(2px)}
.cursor-dot{width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#fff;box-shadow:0 0 16px rgba(225,182,106,.5)}
body.cursor-hover .cursor-ring{scale:1.45;border-color:#E1B66A;background:rgba(225,182,106,.12)}
body.cursor-hover .cursor-dot{scale:.6;background:#E1B66A}
body.cursor-press .cursor-ring{scale:.86}
body.cursor-press .cursor-dot{scale:1.4}

body::after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(420px circle at var(--cursor-x,50%) var(--cursor-y,50%), rgba(225,182,106,.09), transparent 60%);
  opacity:.8;transition:opacity .25s ease;
}
html[data-theme="light"]::after{background:radial-gradient(420px circle at var(--cursor-x,50%) var(--cursor-y,50%), rgba(185,104,255,.08), transparent 60%)}

.button,.theme-toggle,.whatsapp-float,.menu-toggle{will-change:transform}
.button,.theme-toggle,.whatsapp-float,.menu-toggle{transition:transform .18s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease, color .2s ease}

@media (max-width: 960px){
  .hero-float-mark{right:26px;top:120px;width:122px}
  .hero-float-mark::before{display:none}
}
@media (max-width: 720px){
  .hero-float-mark{display:none}
}
@media (hover:none), (pointer:coarse), (prefers-reduced-motion:reduce){
  .cursor-glow,.cursor-ring,.cursor-dot,body::after{display:none !important}
}
@media (max-width: 620px){
  .loader-content{padding:24px 18px;border-radius:22px}
  .loader-title{font-size:clamp(1.8rem,11vw,3rem)}
  .loader-sub{font-size:13px}
  .loader-tags{gap:8px}
  .loader-tags span{padding:7px 10px;font-size:9px}
  .loader-ornament-a{width:120px;height:120px;left:-14px;top:10%}
  .loader-ornament-b{width:84px;height:84px;right:-10px;bottom:14%}
}

/* v5 cinematic loader + section transitions + hero text reveal */
.loader-rings{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;opacity:.75}
.loader-rings span{position:absolute;border:1px solid rgba(255,255,255,.10);border-radius:50%;animation:loaderSpin 9s linear infinite}
.loader-rings span:nth-child(1){width:min(86vw,640px);height:min(86vw,640px)}
.loader-rings span:nth-child(2){width:min(68vw,500px);height:min(68vw,500px);animation-direction:reverse;animation-duration:12s}
.loader-rings span:nth-child(3){width:min(52vw,380px);height:min(52vw,380px);animation-duration:15s}
.loader-rings span::after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,#E1B66A,#C58B4A);box-shadow:0 0 18px rgba(225,182,106,.55);top:50%;left:-6px;translate:0 -50%}
@keyframes loaderSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.loader-mark{position:relative;display:inline-grid;place-items:center;width:90px;height:90px;margin:0 auto 10px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 10px 30px rgba(0,0,0,.2)}
.loader-mark span{font-size:34px;font-weight:900;letter-spacing:-.08em;color:#fff;text-shadow:0 0 24px rgba(225,182,106,.42)}
.loader-mark span:last-child{margin-left:-9px;color:#E8C890}
.loader-mini{margin:8px 0 0;color:rgba(255,255,255,.48);font-size:11px;letter-spacing:.2px}
html[data-theme="light"] .loader-rings span{border-color:rgba(128,92,53,.11)}
html[data-theme="light"] .loader-mark{background:linear-gradient(180deg, rgba(212,175,112,.14), rgba(255,255,255,.42));box-shadow:inset 0 1px 0 rgba(255,255,255,.55), 0 10px 30px rgba(128,92,53,.14)}
html[data-theme="light"] .loader-mark span{color:#6F4B28;text-shadow:none}
html[data-theme="light"] .loader-mark span:last-child{color:#A97137}
html[data-theme="light"] .loader-mini{color:rgba(20,11,32,.46)}

.hero-title-animated .hero-line,
.hero-title-animated em.hero-line{display:block;overflow:hidden}
.hero-title-animated .hero-line > span,
.hero-title-animated em.hero-line > span{display:block;transform:translateY(110%);opacity:.02;filter:blur(6px)}
.reveal.is-visible.hero-title-animated .hero-line > span,
.reveal.is-visible.hero-title-animated em.hero-line > span{animation:heroLineIn .95s cubic-bezier(.18,.8,.2,1) forwards}
.reveal.is-visible.hero-title-animated .hero-line:nth-child(1) > span{animation-delay:.04s}
.reveal.is-visible.hero-title-animated .hero-line:nth-child(2) > span{animation-delay:.18s}
.reveal.is-visible.hero-title-animated .hero-line:nth-child(3) > span{animation-delay:.32s}
@keyframes heroLineIn{to{transform:translateY(0);opacity:1;filter:blur(0)}}

.section{position:relative;isolation:isolate}
.section + .section::before,
.section + section::before,
section + .section::before{content:"";position:absolute;left:0;right:0;top:-46px;height:92px;pointer-events:none;z-index:-1;background:radial-gradient(60% 110% at 50% 100%, rgba(225,182,106,.11), transparent 62%)}
html[data-theme="light"] .section + .section::before,
html[data-theme="light"] .section + section::before,
html[data-theme="light"] section + .section::before{background:radial-gradient(60% 110% at 50% 100%, rgba(225,182,106,.10), transparent 62%)}
.intro-section::after,
.work-section::after,
.pricing-section::after,
.faq-section::after{content:"";position:absolute;left:50%;bottom:-1px;translate:-50% 50%;width:min(86%,820px);height:1px;background:linear-gradient(90deg, transparent, rgba(225,182,106,.45), transparent);opacity:.7}
html[data-theme="light"] .intro-section::after,
html[data-theme="light"] .work-section::after,
html[data-theme="light"] .pricing-section::after,
html[data-theme="light"] .faq-section::after{background:linear-gradient(90deg, transparent, rgba(197,139,74,.36), transparent)}

.cursor-ring{background:conic-gradient(from 0deg, rgba(255,255,255,.10), rgba(225,182,106,.28), rgba(255,255,255,.10));box-shadow:0 0 18px rgba(225,182,106,.16), inset 0 0 0 1px rgba(255,255,255,.16)}
.cursor-ring::before{content:"";position:absolute;inset:4px;border-radius:50%;border:1px solid rgba(255,255,255,.18)}
.cursor-glow{background:radial-gradient(circle, rgba(225,182,106,.22), rgba(225,182,106,.08) 30%, rgba(183,132,71,.06) 45%, transparent 68%)}
body.cursor-hover .cursor-glow{opacity:1;filter:blur(8px)}
body.cursor-hover .cursor-ring{box-shadow:0 0 24px rgba(225,182,106,.26), inset 0 0 0 1px rgba(255,255,255,.18)}

@media (max-width:620px){
  .loader-mark{width:76px;height:76px;border-radius:20px}
  .loader-mark span{font-size:29px}
  .loader-rings span:nth-child(1){width:86vw;height:86vw}
  .loader-rings span:nth-child(2){width:68vw;height:68vw}
  .loader-rings span:nth-child(3){width:52vw;height:52vw}
}

/* v6 loader logo + premium font tuning + disable custom cursor visuals */
body{font-family:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}
.display-title,
.hero h1,
.loader-title,
.contact-copy h2,
.process-list h3,
.price-amount,
.price-card h3{font-family:"Sora", "Plus Jakarta Sans", Inter, sans-serif}
.loader-content{padding:40px 34px; border-radius:30px}
.loader-mark{display:grid;place-items:center;width:188px;height:76px;margin:0 auto 14px;border-radius:22px;background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 12px 34px rgba(0,0,0,.25);animation:loaderPulse 1.3s ease-in-out infinite alternate}
.loader-mark img{width:150px;height:auto;display:block;filter:drop-shadow(0 10px 22px rgba(225,182,106,.22))}
.loader-kicker{font-family:"Sora", sans-serif;font-size:10px;letter-spacing:2.3px}
.loader-title{letter-spacing:-.08em}
.loader-sub{font-size:13.5px}
.loader-mini{font-size:10.5px}
html[data-theme="light"] .loader-mark img{filter:none}

.cursor-glow,.cursor-ring,.cursor-dot{display:none !important}
html.has-custom-cursor,html.has-custom-cursor body,html.has-custom-cursor a,html.has-custom-cursor button,html.has-custom-cursor .service-card,html.has-custom-cursor .work-card,html.has-custom-cursor .price-card,html.has-custom-cursor summary,html.has-custom-cursor .whatsapp-float{cursor:auto !important}
body::after{display:none !important}

@media (max-width:620px){
  .loader-content{padding:26px 18px;border-radius:24px}
  .loader-mark{width:150px;height:64px;border-radius:18px}
  .loader-mark img{width:122px}
}

/* v7 social placeholders */
.footer-links a[aria-disabled="true"]{opacity:.55;pointer-events:none}

/* v8 hero cleanup */
.hero::after{display:none !important}
.hero-float-mark{display:none !important}
body::after{display:none !important}

/* v10 hero object to fill right visual space */
.hero-video{opacity:.42 !important;object-position:70% center}
html[data-theme="light"] .hero-video{opacity:.28 !important}
.hero-grid{opacity:.12 !important;mask-image:linear-gradient(90deg,transparent 0%, rgba(0,0,0,.2) 35%, #000 58%, transparent 88%) !important}
.hero-shade{background:linear-gradient(90deg, rgba(5,5,8,.98) 0%, rgba(5,5,8,.92) 39%, rgba(5,5,8,.54) 67%, rgba(5,5,8,.14) 82%), linear-gradient(0deg, rgba(5,5,8,.88) 0%, transparent 38%) !important}
.hero-object{
  position:absolute; right:max(22px,calc((100vw - 1200px)/2 + 12px)); top:50%; translate:0 -47%;
  width:min(34vw, 420px); aspect-ratio:1/1; z-index:1; pointer-events:none; transform-style:preserve-3d;
  filter:drop-shadow(0 28px 80px rgba(0,0,0,.38));
  animation:heroObjectFloat 7s ease-in-out infinite;
}
.hero-object-glow,
.hero-object-core,
.hero-object-highlight,
.hero-object-orbit,
.hero-object-chip{position:absolute; inset:auto}
.hero-object-glow{
  inset:10% 8% 12% 14%; border-radius:50%;
  background:radial-gradient(circle at 46% 44%, rgba(197,139,74,.7), rgba(214,167,93,.34) 38%, rgba(205,163,96,.18) 52%, transparent 74%);
  filter:blur(28px); opacity:.95;
}
.hero-object-core{
  width:36%; height:36%; left:42%; top:33%; border-radius:50%;
  background:
    radial-gradient(circle at 34% 30%, rgba(255,255,255,.9), rgba(255,255,255,.28) 18%, transparent 22%),
    radial-gradient(circle at 66% 68%, rgba(225,182,106,.22), transparent 28%),
    linear-gradient(145deg, rgba(30,32,48,.78), rgba(14,16,25,.68));
  border:1px solid rgba(255,255,255,.24);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 0 0 1px rgba(205,163,96,.16);
  backdrop-filter:blur(6px);
}
.hero-object-highlight{
  width:15%; height:15%; left:48%; top:36%; border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.82), rgba(255,255,255,0) 70%);
  filter:blur(6px); opacity:.84;
}
.hero-object-orbit{
  left:31%; top:24%; border-radius:50%; border:2px solid rgba(225,182,106,.72);
  width:52%; height:30%; transform-origin:center; box-shadow:0 0 26px rgba(197,139,74,.18);
}
.hero-object-orbit::after{
  content:""; position:absolute; width:12px; height:12px; border-radius:50%;
  background:radial-gradient(circle, #fff, #f0b8ff 62%, rgba(240,184,255,0) 70%);
  box-shadow:0 0 22px rgba(225,182,106,.55);
}
.orbit-a{transform:rotate(18deg)}
.orbit-a::after{right:6%; top:50%; translate:50% -50%}
.orbit-b{width:42%; height:42%; left:37%; top:27%; border-color:rgba(205,163,96,.62); transform:rotate(-22deg);}
.orbit-b::after{left:14%; bottom:4%; translate:-50% 50%; background:radial-gradient(circle, #fff, #96d5ff 62%, rgba(205,163,96,0) 70%); box-shadow:0 0 20px rgba(205,163,96,.42)}
.orbit-c{width:60%; height:60%; left:28%; top:17%; border-width:1px; border-color:rgba(255,255,255,.34); transform:rotate(0deg);}
.orbit-c::after{left:50%; top:-2%; translate:-50% -50%; width:8px; height:8px; background:radial-gradient(circle, #fff, rgba(255,255,255,0) 72%); box-shadow:none}
.hero-object-chip{
  background:linear-gradient(145deg, rgba(26,28,40,.82), rgba(13,14,22,.72));
  border:1px solid rgba(255,255,255,.16); border-radius:14px; box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 10px 30px rgba(0,0,0,.18);
}
.hero-object-chip::before{content:""; position:absolute; inset:2px auto auto 2px; height:2px; width:45%; border-radius:999px; background:rgba(255,255,255,.55)}
.chip-a{width:18%; height:10%; right:6%; top:36%; rotate:-21deg; border-color:rgba(214,167,93,.22); animation:chipFloatA 5.6s ease-in-out infinite}
.chip-b{width:14%; height:8%; right:18%; bottom:18%; rotate:16deg; border-color:rgba(205,163,96,.22); animation:chipFloatB 6.2s ease-in-out infinite}
.chip-c{width:12%; height:7%; left:28%; bottom:25%; rotate:-16deg; border-color:rgba(255,255,255,.18); animation:chipFloatC 6.8s ease-in-out infinite}
@keyframes heroObjectFloat{50%{translate:0 calc(-47% - 10px)}}
@keyframes chipFloatA{50%{transform:translate3d(0,-8px,0) rotate(-21deg)}}
@keyframes chipFloatB{50%{transform:translate3d(0,7px,0) rotate(16deg)}}
@keyframes chipFloatC{50%{transform:translate3d(0,-6px,0) rotate(-16deg)}}
html[data-theme="light"] .hero-shade{background:linear-gradient(90deg, rgba(246,243,251,.98) 0%, rgba(246,243,251,.92) 40%, rgba(246,243,251,.72) 67%, rgba(246,243,251,.28) 82%), linear-gradient(0deg, rgba(246,243,251,.9) 0%, transparent 38%) !important}
html[data-theme="light"] .hero-object-glow{background:radial-gradient(circle at 46% 44%, rgba(197,139,74,.4), rgba(214,167,93,.2) 38%, rgba(205,163,96,.12) 52%, transparent 74%)}
html[data-theme="light"] .hero-object-core{background:linear-gradient(145deg, rgba(255,255,255,.78), rgba(236,232,245,.7)); border-color:rgba(143,104,63,.2); box-shadow: inset 0 1px 0 rgba(255,255,255,.4), 0 0 0 1px rgba(205,163,96,.1)}
@media (max-width: 960px){
  .hero-object{width:min(44vw,320px); right:20px; top:55%}
}
@media (max-width: 720px){
  .hero-object{width:240px; right:-10px; top:57%; opacity:.92}
  .hero-video{opacity:.34 !important}
}
@media (max-width: 620px){
  .hero-object{width:210px; right:-26px; top:58%}
}


/* v11 hero object: 3D crystal */
.hero-crystal{
  width:min(35vw, 430px);
  aspect-ratio:1/1;
  right:max(16px,calc((100vw - 1200px)/2 - 2px));
  top:52%;
  translate:0 -50%;
  perspective:1200px;
  animation:heroCrystalFloat 7.5s ease-in-out infinite;
}
.hero-crystal .hero-object-glow{
  inset:6% 6% 10% 10%;
  background:
    radial-gradient(circle at 45% 42%, rgba(146,104,255,.78), rgba(204,95,255,.34) 34%, rgba(205,163,96,.18) 56%, transparent 74%),
    radial-gradient(circle at 66% 58%, rgba(95,194,255,.24), transparent 36%);
  filter:blur(34px);
  opacity:.95;
}
.crystal-shadow{
  position:absolute;
  left:34%; right:10%; bottom:14%; height:12%;
  border-radius:50%;
  background:radial-gradient(circle, rgba(102,72,220,.42), rgba(0,0,0,0) 70%);
  filter:blur(18px);
}
.crystal-facet,
.crystal-core,
.crystal-shard,
.crystal-spark{position:absolute; pointer-events:none}
.crystal-facet{
  background:linear-gradient(160deg, rgba(255,255,255,.38), rgba(177,121,255,.20) 32%, rgba(59,63,95,.42) 78%, rgba(20,21,32,.58));
  border:1px solid rgba(255,255,255,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22), 0 12px 30px rgba(0,0,0,.18);
  backdrop-filter:blur(7px);
}
.facet-back{
  width:34%; height:54%; left:49%; top:22%;
  clip-path:polygon(50% 0%, 100% 26%, 86% 100%, 18% 88%, 0% 28%);
  transform:rotate(8deg) translateZ(-20px);
  opacity:.6;
  background:linear-gradient(155deg, rgba(152,216,255,.25), rgba(200,108,255,.16), rgba(24,26,40,.46));
}
.facet-main{
  width:32%; height:58%; left:47%; top:18%;
  clip-path:polygon(50% 0%, 98% 26%, 82% 100%, 18% 100%, 2% 26%);
  transform:rotate(8deg) translateZ(24px);
}
.facet-left{
  width:22%; height:51%; left:41%; top:23%;
  clip-path:polygon(58% 0%, 100% 12%, 72% 100%, 0% 78%, 12% 18%);
  transform:rotate(-10deg) skewY(4deg) translateZ(14px);
  background:linear-gradient(160deg, rgba(255,255,255,.25), rgba(116,177,255,.20) 35%, rgba(27,29,42,.54));
}
.facet-right{
  width:20%; height:49%; left:64%; top:24%;
  clip-path:polygon(42% 0%, 88% 16%, 100% 78%, 28% 100%, 0% 14%);
  transform:rotate(14deg) skewY(-3deg) translateZ(18px);
  background:linear-gradient(150deg, rgba(255,255,255,.28), rgba(214,112,255,.22) 32%, rgba(27,29,42,.58));
}
.facet-top{
  width:24%; height:16%; left:50%; top:16%;
  clip-path:polygon(50% 0%, 100% 52%, 52% 100%, 0% 52%);
  transform:rotate(7deg) translateZ(26px);
  background:linear-gradient(180deg, rgba(255,255,255,.54), rgba(173,119,255,.18));
}
.facet-bottom{
  width:18%; height:14%; left:55%; top:69%;
  clip-path:polygon(18% 0%, 100% 0%, 70% 100%, 0% 100%);
  transform:rotate(8deg) translateZ(10px);
  background:linear-gradient(180deg, rgba(123,210,255,.22), rgba(28,30,44,.62));
}
.crystal-core{
  width:15%; height:25%; left:57%; top:33%;
  clip-path:polygon(50% 0%, 100% 28%, 72% 100%, 28% 100%, 0% 28%);
  background:linear-gradient(180deg, rgba(255,255,255,.42), rgba(255,255,255,.06));
  filter:blur(.2px);
  opacity:.55;
  transform:rotate(8deg) translateZ(34px);
}
.crystal-spark{
  width:12%; height:12%;
  background:radial-gradient(circle, rgba(255,255,255,.95), rgba(255,255,255,.08) 54%, rgba(255,255,255,0) 72%);
  filter:blur(4px);
  opacity:.9;
}
.spark-a{left:58%; top:24%;}
.spark-b{left:70%; top:46%; width:7%; height:7%; opacity:.7}
.spark-c{left:49%; top:56%; width:9%; height:9%; opacity:.52}
.crystal-shard{
  background:linear-gradient(155deg, rgba(255,255,255,.34), rgba(154,123,255,.18), rgba(25,27,40,.56));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 10px 24px rgba(0,0,0,.16);
  clip-path:polygon(50% 0%, 100% 30%, 72% 100%, 24% 100%, 0% 30%);
}
.shard-a{width:13%; height:21%; right:6%; top:39%; transform:rotate(24deg); animation:crystalShardA 6.4s ease-in-out infinite}
.shard-b{width:11%; height:18%; right:18%; bottom:16%; transform:rotate(-16deg); animation:crystalShardB 5.8s ease-in-out infinite}
.shard-c{width:9%; height:15%; left:33%; bottom:22%; transform:rotate(18deg); animation:crystalShardC 6.9s ease-in-out infinite}
@keyframes heroCrystalFloat{50%{translate:0 calc(-50% - 10px)}}
@keyframes crystalShardA{50%{transform:translateY(-8px) rotate(30deg)}}
@keyframes crystalShardB{50%{transform:translateY(7px) rotate(-10deg)}}
@keyframes crystalShardC{50%{transform:translateY(-6px) rotate(24deg)}}
html[data-theme="light"] .hero-crystal .hero-object-glow{
  background:
    radial-gradient(circle at 45% 42%, rgba(212,165,91,.42), rgba(212,165,91,.18) 34%, rgba(205,163,96,.10) 56%, transparent 74%),
    radial-gradient(circle at 66% 58%, rgba(95,194,255,.12), transparent 36%);
}
html[data-theme="light"] .crystal-facet,
html[data-theme="light"] .crystal-shard{
  background:linear-gradient(160deg, rgba(255,255,255,.76), rgba(222,202,160,.48) 36%, rgba(224,211,177,.34) 64%, rgba(228,223,240,.42));
  border-color:rgba(143,104,63,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5), 0 12px 28px rgba(128,92,53,.10);
}
html[data-theme="light"] .crystal-shadow{background:radial-gradient(circle, rgba(139,111,224,.18), rgba(0,0,0,0) 70%)}
@media (max-width: 960px){
  .hero-crystal{width:min(43vw,320px); right:10px; top:56%}
}
@media (max-width: 720px){
  .hero-crystal{width:240px; right:-12px; top:60%}
}
@media (max-width: 620px){
  .hero-crystal{width:210px; right:-24px; top:61%}
}


/* v12 hero: purple jupiter object + cleaner light mode */
.hero-grid{display:none !important;}
.hero-video{opacity:.22 !important; object-position:70% center; filter:saturate(1.05) brightness(.92);}
.hero-shade{background:linear-gradient(90deg, rgba(5,5,8,.98) 0%, rgba(5,5,8,.94) 42%, rgba(5,5,8,.68) 68%, rgba(5,5,8,.25) 86%), linear-gradient(0deg, rgba(5,5,8,.9) 0%, transparent 36%) !important;}
.hero-planet{
  width:min(35vw, 420px);
  aspect-ratio:1/1;
  right:max(12px, calc((100vw - 1200px)/2));
  top:52%;
  translate:0 -50%;
  transform-style:preserve-3d;
  perspective:1200px;
  animation:planetFloat 8s ease-in-out infinite;
}
.hero-planet .hero-object-glow{
  inset:2% 4% 6% 8%;
  background:
    radial-gradient(circle at 44% 48%, rgba(140,97,255,.68), rgba(212,93,255,.32) 36%, rgba(101,185,255,.16) 54%, transparent 72%),
    radial-gradient(circle at 70% 44%, rgba(255,255,255,.16), transparent 24%);
  filter:blur(36px);
  opacity:.95;
}
.planet-aura{
  position:absolute; inset:18% 14% 20% 20%; border-radius:50%;
  background:radial-gradient(circle, rgba(191,109,255,.18), rgba(112,78,255,.08) 54%, transparent 72%);
  filter:blur(16px);
}
.planet-core,
.planet-ring,
.planet-moon,
.planet-particle,
.planet-band,
.planet-highlight{position:absolute; display:block; pointer-events:none}
.planet-core{
  width:43%; height:43%; left:44%; top:28%; border-radius:50%; overflow:hidden;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.52), rgba(255,255,255,.10) 18%, transparent 26%),
    radial-gradient(circle at 70% 68%, rgba(98,167,255,.18), transparent 34%),
    linear-gradient(145deg, rgba(208,139,255,.92), rgba(142,96,255,.88) 40%, rgba(94,70,208,.94) 72%, rgba(57,47,134,.98));
  border:1px solid rgba(255,255,255,.22);
  box-shadow:inset -16px -18px 28px rgba(48,32,110,.46), inset 12px 10px 20px rgba(255,255,255,.12), 0 24px 56px rgba(0,0,0,.22);
}
.planet-band{
  left:-8%; width:116%; border-radius:50%; opacity:.95;
  background:linear-gradient(90deg, rgba(255,255,255,.10), rgba(255,255,255,.42), rgba(255,255,255,.08));
  mix-blend-mode:screen;
}
.band-a{top:22%; height:12%; transform:rotate(-14deg);}
.band-b{top:46%; height:14%; transform:rotate(12deg); background:linear-gradient(90deg, rgba(255,255,255,.08), rgba(250,214,255,.36), rgba(255,255,255,.10));}
.band-c{top:68%; height:11%; transform:rotate(-10deg); background:linear-gradient(90deg, rgba(255,255,255,.06), rgba(175,219,255,.30), rgba(255,255,255,.08));}
.planet-highlight{
  width:24%; height:24%; left:20%; top:18%; border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.92), rgba(255,255,255,.06) 68%, transparent 72%);
  filter:blur(5px);
  opacity:.72;
}
.planet-ring{
  left:31%; top:33%; width:54%; height:20%; border-radius:50%;
  border:2px solid rgba(241,181,255,.60);
  box-shadow:0 0 18px rgba(207,106,255,.14);
  transform-origin:center;
}
.ring-back{transform:rotate(-16deg) translateZ(-20px); opacity:.42; clip-path:inset(0 0 50% 0);}
.ring-front{transform:rotate(-16deg) translateZ(20px); opacity:.92; clip-path:inset(48% 0 0 0);}
.ring-front::after,
.ring-back::after{
  content:""; position:absolute; inset:-2px; border-radius:50%; border:1px solid rgba(111,199,255,.42);
}
.planet-moon{
  border-radius:50%;
  background:radial-gradient(circle at 34% 30%, rgba(255,255,255,.74), rgba(255,255,255,.10) 24%, transparent 30%), linear-gradient(145deg, rgba(225,161,255,.86), rgba(113,93,255,.82));
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 8px 20px rgba(0,0,0,.18);
}
.moon-a{width:10%; height:10%; left:76%; top:24%; animation:moonFloatA 6.2s ease-in-out infinite;}
.moon-b{width:7%; height:7%; left:34%; top:66%; animation:moonFloatB 5.8s ease-in-out infinite;}
.planet-particle{
  width:10px; height:10px; border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.95), rgba(255,255,255,.10) 58%, transparent 72%);
  filter:blur(1px); opacity:.9;
}
.particle-a{left:86%; top:36%; animation:particleDrift 5.6s ease-in-out infinite;}
.particle-b{left:72%; top:16%; width:6px; height:6px; opacity:.7; animation:particleDrift 6.6s ease-in-out infinite reverse;}
.particle-c{left:30%; top:28%; width:7px; height:7px; opacity:.65; animation:particleDrift 6.1s ease-in-out infinite;}
.particle-d{left:40%; top:80%; width:8px; height:8px; opacity:.72; animation:particleDrift 5.2s ease-in-out infinite reverse;}
.particle-e{left:90%; top:62%; width:5px; height:5px; opacity:.55; animation:particleDrift 7.1s ease-in-out infinite;}
@keyframes planetFloat{50%{translate:0 calc(-50% - 10px)}}
@keyframes moonFloatA{50%{transform:translate3d(0,-8px,0)}}
@keyframes moonFloatB{50%{transform:translate3d(0,6px,0)}}
@keyframes particleDrift{50%{transform:translate3d(0,-10px,0) scale(1.12)}}

html[data-theme="light"] .hero{
  background:linear-gradient(135deg, #F5EEE2 0%, #ECE2D3 54%, #E2D6C4 100%);
}
html[data-theme="light"] .hero-video{
  opacity:.10 !important;
  filter:saturate(.7) brightness(1.02) blur(.2px);
}
html[data-theme="light"] .hero-shade{
  background:linear-gradient(90deg, rgba(240,236,246,.94) 0%, rgba(240,236,246,.88) 42%, rgba(235,230,243,.66) 68%, rgba(232,226,241,.32) 86%), linear-gradient(0deg, rgba(244,240,248,.78) 0%, transparent 36%) !important;
}
html[data-theme="light"] .hero-planet .hero-object-glow{
  background:
    radial-gradient(circle at 44% 48%, rgba(165,123,255,.34), rgba(202,114,255,.14) 36%, rgba(101,185,255,.08) 54%, transparent 72%),
    radial-gradient(circle at 70% 44%, rgba(255,255,255,.12), transparent 24%);
  opacity:.86;
}
html[data-theme="light"] .planet-core{
  border-color:rgba(133,112,194,.28);
  box-shadow:inset -14px -16px 24px rgba(93,79,162,.18), inset 12px 10px 20px rgba(255,255,255,.18), 0 18px 36px rgba(84,67,132,.10);
}
html[data-theme="light"] .planet-ring{border-color:rgba(164,106,234,.42); box-shadow:none;}
html[data-theme="light"] .ring-front::after,
html[data-theme="light"] .ring-back::after{border-color:rgba(121,167,230,.26)}
html[data-theme="light"] .planet-aura{background:radial-gradient(circle, rgba(191,109,255,.10), rgba(112,78,255,.04) 54%, transparent 72%)}

@media (max-width: 960px){
  .hero-planet{width:min(43vw,320px); right:8px; top:56%;}
}
@media (max-width: 720px){
  .hero-planet{width:240px; right:-6px; top:60%; opacity:.95;}
  .hero-video{opacity:.18 !important;}
}
@media (max-width: 620px){
  .hero-planet{width:205px; right:-18px; top:61%;}
}

/* v13: remove all background lines; dedicated Jupiter-style hero visual */
.hero-video{display:none !important;}
.hero-grid{display:none !important;}
.hero::after{display:none !important;}
.hero{
  background:
    radial-gradient(680px 520px at 83% 49%, rgba(197,139,74,.28), transparent 60%),
    radial-gradient(480px 400px at 88% 42%, rgba(225,182,106,.11), transparent 58%),
    linear-gradient(105deg, #07080A 0%, #070812 48%, #0c1025 100%);
}
.hero-shade{background:linear-gradient(90deg, rgba(4,4,7,.95) 0%, rgba(4,4,7,.88) 45%, rgba(6,8,18,.36) 76%, rgba(7,10,26,.12) 100%) !important;}
.hero-planet{z-index:0;}
.hero-inner,.hero-scroll{position:relative;z-index:2;}

/* Make the planet fuller and less like a flat ornament. */
.planet-core{
  width:48%; height:48%; left:40%; top:25%;
  background:
    radial-gradient(circle at 31% 26%, rgba(255,255,255,.72), rgba(255,255,255,.11) 18%, transparent 26%),
    radial-gradient(circle at 74% 68%, rgba(205,163,96,.24), transparent 33%),
    radial-gradient(circle at 52% 52%, rgba(225,182,106,.12), transparent 46%),
    linear-gradient(145deg, #EBCB8C 0%, #C58B4A 31%, #8E6236 64%, #4B3A2C 100%);
  box-shadow:inset -20px -22px 34px rgba(59,43,26,.58), inset 12px 10px 20px rgba(255,255,255,.14), 0 28px 64px rgba(0,0,0,.28);
}
.planet-ring{left:28%; top:35%; width:63%; height:23%;}
.ring-back{opacity:.34;}
.ring-front{opacity:.86;}
.planet-aura{inset:10% 6% 12% 9%; filter:blur(20px);}
.planet-particle{box-shadow:0 0 18px rgba(225,182,106,.7);}

/* Clean but designed light theme: lavender surface, darker readable copy, low-contrast planet glow. */
html[data-theme="light"] .hero{
  background:
    radial-gradient(640px 500px at 83% 49%, rgba(197,139,74,.20), transparent 60%),
    radial-gradient(440px 380px at 88% 42%, rgba(225,182,106,.14), transparent 58%),
    linear-gradient(110deg, #F3ECE0 0%, #EFE5D6 50%, #E2D6C5 100%);
}
html[data-theme="light"] .hero-shade{background:linear-gradient(90deg, rgba(246,243,250,.96) 0%, rgba(246,243,250,.89) 47%, rgba(240,235,247,.50) 76%, rgba(234,228,242,.20) 100%) !important;}
html[data-theme="light"] .hero h1{color:#171310;}
html[data-theme="light"] .hero h1 em{color:#A97137;}
html[data-theme="light"] .hero-copy{color:#5F554B; font-weight:550;}
html[data-theme="light"] .hero-meta strong{color:#171310;}
html[data-theme="light"] .hero-meta span{color:#72665A;}
html[data-theme="light"] .hero-scroll{color:#776B5E;}
html[data-theme="light"] .planet-core{box-shadow:inset -18px -20px 30px rgba(91,67,42,.25), inset 12px 10px 20px rgba(255,255,255,.30), 0 20px 42px rgba(119,85,48,.14);}
html[data-theme="light"] .planet-ring{border-color:rgba(197,139,74,.48);}
html[data-theme="light"] .ring-front::after, html[data-theme="light"] .ring-back::after{border-color:rgba(205,163,96,.32);}

@media (max-width:720px){
  .hero{background:radial-gradient(360px 340px at 90% 56%, rgba(126,80,230,.24), transparent 60%), linear-gradient(105deg,#07080A 0%,#080916 100%);}
  html[data-theme="light"] .hero{background:radial-gradient(320px 310px at 90% 56%, rgba(197,139,74,.18), transparent 60%), linear-gradient(105deg,#F3ECE0 0%,#e9e4f0 100%);}
}

/* v14 critical layout repair: keep the scroll cue out of the flex flow and stop headline edge clipping. */
.brand{
  position:relative;
  width:196px;
  height:48px;
  flex:0 0 196px;
}
.brand .brand-logo{
  position:absolute;
  inset:0 auto 0 0;
  width:196px;
  height:auto;
}
.brand-logo-light{display:none;}
html[data-theme="light"] .brand-logo-dark{display:none;}
html[data-theme="light"] .brand-logo-light{display:block;}

/* This was accidentally changed to position:relative in an earlier override.
   It made the cue a flex item and squeezed the whole headline to the left. */
.hero-scroll{
  position:absolute;
  left:max(24px, calc((100vw - 1200px) / 2));
  right:auto;
  bottom:24px;
  z-index:2;
}
.hero-inner{
  position:relative;
  z-index:2;
  flex:0 0 var(--shell);
  min-width:0;
  margin-inline:auto;
}

/* Preserve the entry animation without chopping off the first/last glyphs. */
.hero-title-animated .hero-line,
.hero-title-animated em.hero-line{
  overflow:visible;
  clip-path:inset(-0.18em -0.15em 0 -0.15em);
  padding-inline:.075em;
  margin-inline:-.075em;
}
.hero h1{
  max-width:820px;
  font-size:clamp(3rem, 5.75vw, 6.25rem);
  letter-spacing:-.07em;
}

@media (max-width:960px){
  .brand{width:178px;flex-basis:178px;}
  .brand .brand-logo{width:178px;}
  .hero-inner{flex-basis:var(--shell);}
  .hero h1{max-width:690px;font-size:clamp(3rem, 7.2vw, 5.35rem);}
}
@media (max-width:620px){
  .brand{width:150px;flex-basis:150px;}
  .brand .brand-logo{width:150px;}
  .hero-inner{flex-basis:var(--shell);}
  .hero h1{max-width:100%;font-size:clamp(3rem, 13vw, 4.9rem);}
  .hero-scroll{left:16px;bottom:20px;}
}


/* v15 brand text visibility fix: use real HTML text so dark/light mode stays readable */
.brand,
.footer-brand-lockup{
  display:inline-flex;
  align-items:center;
  gap:12px;
}
.brand{
  position:relative;
  width:auto;
  height:auto;
  min-height:48px;
  flex:0 0 auto;
}
.brand-mark{
  width:48px;
  height:48px;
  display:block;
  flex:0 0 48px;
}
.brand-texts{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  line-height:1;
}
.brand-name,
.brand-sub{
  display:block;
  white-space:nowrap;
}
.brand-name{
  color:#F7F4FC;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
}
.brand-sub{
  color:rgba(247,244,252,.72);
  font-size:8px;
  font-weight:800;
  letter-spacing:.26em;
  margin-top:5px;
}
html[data-theme="light"] .brand-name{color:#160F22;}
html[data-theme="light"] .brand-sub{color:rgba(22,15,34,.72);}
.footer-brand .brand-name{font-size:17px; letter-spacing:.03em;}
.footer-brand .brand-sub{font-size:8.5px; margin-top:6px;}
.footer-brand-lockup{margin-bottom:14px;}
.footer-brand img.brand-mark{width:58px;height:58px;flex-basis:58px;}
/* neutralize older image-only logo rules */
.brand .brand-logo,
.brand-logo-light,
.brand-logo-dark{display:none !important;}
.footer-brand > img{display:none !important;}

@media (max-width:960px){
  .brand-mark{width:46px;height:46px;flex-basis:46px;}
  .brand-name{font-size:11px;}
  .brand-sub{font-size:7.6px;}
}
@media (max-width:620px){
  .brand{gap:10px;}
  .brand-mark{width:42px;height:42px;flex-basis:42px;}
  .brand-name{font-size:10px;}
  .brand-sub{font-size:7px;letter-spacing:.22em;}
  .footer-brand .brand-name{font-size:15px;}
}


/* v17 cloud enquiry form */
.form-honeypot{position:absolute !important;left:-9999px !important;width:1px !important;height:1px !important;overflow:hidden !important;opacity:0 !important;pointer-events:none !important;}
.form-status{display:none;margin:12px 0 0;font-size:12px;line-height:1.55;}
.form-status.is-pending,.form-status.is-success,.form-status.is-error{display:block;}
.form-status.is-pending{color:var(--muted);}
.form-status.is-success{color:#5ddf9b;}
.form-status.is-error{color:#ff9cab;}
.form-status a{color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:800;}
.button-submit:disabled{opacity:.68;cursor:wait;transform:none !important;}
html[data-theme="light"] .form-status.is-success{color:#087a45;}
html[data-theme="light"] .form-status.is-error{color:#b4233d;}

/* v18 — original services extension: horizontal drag gallery + animated mobile motion preview */
.service-extensions{
  margin-top:76px;
  padding:34px;
  border:1px solid var(--line);
  border-radius:28px;
  background:linear-gradient(145deg, color-mix(in srgb, var(--bg-soft) 76%, transparent), color-mix(in srgb, var(--surface) 78%, transparent));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  overflow:hidden;
}
.extension-head{display:grid;grid-template-columns:1.15fr .72fr;gap:44px;align-items:end;}
.extension-kicker,.momentum-eyebrow{margin:0 0 11px;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:1.65px;}
.extension-head h3{max-width:560px;margin:0;font-family:"Sora","Plus Jakarta Sans",sans-serif;font-size:clamp(2rem,3.5vw,3.45rem);line-height:.98;letter-spacing:-.075em;}
.extension-head h3 em,.momentum-copy h2 em{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;color:#efa9ff;letter-spacing:-.075em;}
.extension-head>p{margin:0;max-width:390px;color:var(--muted);font-size:13px;line-height:1.7;}
.drag-note{display:flex;align-items:center;justify-content:center;gap:10px;margin:29px 0 18px;color:var(--subtle);font-size:10px;font-weight:850;letter-spacing:1.15px;text-transform:uppercase;}
.drag-note span{display:block;width:38px;height:1px;background:linear-gradient(90deg,transparent,var(--accent));}.drag-note span:last-child{transform:scaleX(-1)}
.service-carousel{display:grid;grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:12px;}
.carousel-arrow,.showcase-nav{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 55%,transparent);color:var(--text);font-size:21px;line-height:1;display:grid;place-items:center;transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;}
.carousel-arrow:hover,.showcase-nav:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 60%,var(--line));background:var(--surface-strong);box-shadow:0 10px 24px rgba(0,0,0,.16)}
.service-rail{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 13px;scrollbar-width:none;touch-action:pan-y pinch-zoom;cursor:grab;user-select:none;-webkit-overflow-scrolling:touch;}
.service-rail::-webkit-scrollbar{display:none}.service-rail.is-dragging{cursor:grabbing;scroll-snap-type:none;}
.service-rail .service-visual-card{touch-action:pan-y pinch-zoom;}
.carousel-progress{display:flex;justify-content:center;gap:4px;margin-top:13px;}
.carousel-progress button{appearance:none;border:0;background:transparent;padding:8px 4px;cursor:pointer;touch-action:manipulation;}
.carousel-progress button::after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--subtle) 55%,transparent);transition:width .25s,background .25s;}
.carousel-progress button.is-active::after{width:28px;border-radius:999px;background:var(--accent);}
.carousel-progress button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px;}
.service-visual-card{position:relative;isolation:isolate;flex:0 0 min(288px,78vw);min-height:365px;scroll-snap-align:start;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:linear-gradient(160deg,color-mix(in srgb,var(--surface-strong) 92%,transparent),color-mix(in srgb,var(--bg) 48%,transparent));box-shadow:0 14px 30px rgba(0,0,0,.12);transition:transform .25s,border-color .25s,box-shadow .25s;}
.service-visual-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--accent) 48%,var(--line));box-shadow:0 22px 44px rgba(0,0,0,.2);}
.service-art{height:184px;position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(circle at 78% 22%,rgba(232,132,255,.32),transparent 30%),linear-gradient(145deg,#211335 0%,#0f1020 72%);}
.service-art::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 30%,rgba(255,255,255,.02));pointer-events:none;}
.service-card-copy{padding:20px 20px 22px;position:relative;}
.service-card-copy h4{margin:11px 0 8px;font-family:"Sora","Plus Jakarta Sans",sans-serif;font-size:18px;line-height:1.13;letter-spacing:-.055em;}
.service-card-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.62;}
.service-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,#f2c0ff,#ad55ff);color:#260831;font-size:17px;font-weight:900;box-shadow:0 8px 18px rgba(198,78,235,.25);}
.carousel-progress{display:flex;justify-content:center;gap:8px;margin-top:19px;}.carousel-progress span,.carousel-progress i{display:block;width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--subtle) 55%,transparent);transition:width .25s,background .25s;}.carousel-progress .is-active{width:28px;border-radius:999px;background:var(--accent);}

/* distinct conceptual artworks for each service — rendered locally, no copied client imagery */
.art-browser{position:absolute;left:25px;top:26px;width:175px;height:111px;border:1px solid rgba(255,255,255,.2);border-radius:13px;background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.035));box-shadow:0 20px 34px rgba(0,0,0,.22);overflow:hidden;transform:rotate(-7deg);}
.art-browser>span{position:absolute;top:10px;width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.55)}.art-browser>span:nth-child(1){left:12px}.art-browser>span:nth-child(2){left:21px}.art-browser>span:nth-child(3){left:30px}.art-browser b{position:absolute;left:16px;right:16px;top:31px;height:34px;border-radius:7px;background:linear-gradient(110deg,rgba(211,105,255,.8),rgba(126,94,255,.25));}.art-browser i{position:absolute;left:16px;bottom:15px;width:91px;height:6px;border-radius:99px;background:rgba(255,255,255,.24);}.art-browser em{position:absolute;right:16px;bottom:15px;width:34px;height:6px;border-radius:99px;background:#e99bff;}
.art-status{position:absolute;right:18px;bottom:26px;display:grid;gap:4px;padding:13px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(11,10,22,.6);backdrop-filter:blur(8px);box-shadow:0 12px 24px rgba(0,0,0,.16);}.art-status small{font-size:8px;letter-spacing:1.3px;color:#c7b4d0;font-weight:800}.art-status strong{font-family:"Sora",sans-serif;font-size:18px;letter-spacing:-.08em;color:#fff;}
.art-presence{background:radial-gradient(circle at 22% 20%,rgba(255,164,231,.3),transparent 33%),linear-gradient(145deg,#29143b,#13142c 75%);}.presence-tile{position:absolute;display:grid;place-items:center;color:#fff;font-size:25px;font-weight:850;border:1px solid rgba(255,255,255,.18);box-shadow:0 16px 28px rgba(0,0,0,.18);}.tile-a{width:72px;height:72px;left:30px;top:33px;border-radius:19px;background:linear-gradient(145deg,#e36bff,#7a50ff);transform:rotate(-11deg)}.tile-b{width:60px;height:60px;left:101px;top:21px;border-radius:17px;background:linear-gradient(145deg,#4d82ff,#be71ff);transform:rotate(11deg)}.tile-c{width:62px;height:62px;left:119px;top:83px;border-radius:18px;background:linear-gradient(145deg,#ff97c7,#a75efa);transform:rotate(-9deg)}
.presence-graph{position:absolute;right:22px;bottom:19px;width:91px;height:48px;display:flex;align-items:end;gap:7px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:11px;background:rgba(10,9,20,.44);}.presence-graph span{width:9px;border-radius:5px 5px 2px 2px;background:linear-gradient(#f6c1ff,#a253ff)}.presence-graph span:nth-child(1){height:14px}.presence-graph span:nth-child(2){height:27px}.presence-graph span:nth-child(3){height:18px}.presence-graph span:nth-child(4){height:33px}.presence-graph span:nth-child(5){height:39px}
.art-seo{background:radial-gradient(circle at 76% 28%,rgba(107,172,255,.26),transparent 36%),linear-gradient(145deg,#101f38,#121125 74%);}.seo-search{position:absolute;left:24px;right:22px;top:24px;height:35px;display:flex;align-items:center;gap:9px;padding:0 12px;border-radius:9px;border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.08);color:#fff;}.seo-search span{font-size:21px;color:#e4a6ff}.seo-search b{font-size:10px;letter-spacing:.25px;font-weight:700;opacity:.8}.seo-lines{position:absolute;left:24px;top:75px;display:grid;gap:8px}.seo-lines i{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.2)}.seo-lines i:nth-child(1){width:105px}.seo-lines i:nth-child(2){width:78px}.seo-lines i:nth-child(3){width:93px}.seo-chart{position:absolute;right:20px;bottom:17px;width:128px;height:74px;border-left:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22);}.seo-chart span{position:absolute;bottom:0;width:14px;border-radius:6px 6px 0 0;background:linear-gradient(#adceff,#9b57ff)}.seo-chart span:nth-child(1){height:23px;left:12px}.seo-chart span:nth-child(2){height:32px;left:34px}.seo-chart span:nth-child(3){height:29px;left:56px}.seo-chart span:nth-child(4){height:48px;left:78px}.seo-chart span:nth-child(5){height:61px;left:100px}.seo-chart b{position:absolute;left:12px;right:4px;bottom:16px;height:2px;background:#edb6ff;transform:rotate(-25deg);transform-origin:left center;box-shadow:0 0 12px rgba(237,182,255,.6)}
.art-creative{background:radial-gradient(circle at 82% 17%,rgba(255,171,214,.25),transparent 34%),linear-gradient(145deg,#36152e,#151125 78%);}.creative-sheet{position:absolute;width:100px;height:124px;border-radius:9px;border:1px solid rgba(255,255,255,.16);box-shadow:0 15px 26px rgba(0,0,0,.22)}.sheet-back{left:36px;top:29px;background:#5d3e93;transform:rotate(-12deg)}.sheet-mid{left:76px;top:25px;background:#b05acf;transform:rotate(8deg)}.sheet-front{left:58px;top:21px;padding:18px 14px;background:linear-gradient(145deg,#f1c4ff,#9b59ee);color:#35103f;transform:rotate(-2deg);}.sheet-front span{display:block;width:42px;height:42px;border:2px solid rgba(53,16,63,.5);border-radius:50%;margin-bottom:12px}.sheet-front b{font-family:"Sora",sans-serif;font-size:13px;letter-spacing:-.08em}.sheet-front i{display:block;width:54px;height:6px;border-radius:99px;background:rgba(53,16,63,.45);margin-top:8px}.creative-pencil{position:absolute;right:32px;bottom:28px;width:108px;height:14px;border-radius:999px;background:linear-gradient(90deg,#f9d1ff 0 75%,#f0b8a0 75%);transform:rotate(-31deg);box-shadow:0 8px 16px rgba(0,0,0,.22)}

/* Original mobile motion showcase — CSS animation keeps it fast while feeling like a small reel. */
.momentum-section{padding:0 0 132px;}.momentum-panel{position:relative;display:grid;grid-template-columns:1fr .82fr;gap:46px;align-items:center;min-height:520px;padding:52px clamp(28px,6vw,80px);border:1px solid var(--line);border-radius:30px;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--bg-soft) 92%,transparent),color-mix(in srgb,var(--surface) 70%,transparent));box-shadow:var(--shadow);}.momentum-panel::before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-13%;top:-38%;background:radial-gradient(circle,rgba(211,90,255,.15),transparent 67%);pointer-events:none}.momentum-copy{position:relative;z-index:2;max-width:500px}.momentum-copy h2{margin:0;font-family:"Sora","Plus Jakarta Sans",sans-serif;font-size:clamp(2.3rem,4.35vw,5rem);line-height:.92;letter-spacing:-.08em}.momentum-text{max-width:420px;margin:22px 0 0;color:var(--muted);font-size:14px;line-height:1.72}.momentum-nav{display:flex;align-items:center;gap:13px;margin-top:34px}.showcase-nav{width:39px;height:39px;font-size:18px}.showcase-lines{display:flex;gap:8px;align-items:center}.showcase-lines span{display:block;width:38px;height:2px;border-radius:999px;background:color-mix(in srgb,var(--subtle) 48%,transparent);transition:background .3s,width .3s}.showcase-lines span.is-active{width:58px;background:var(--accent)}
.phone-stage{position:relative;display:grid;place-items:center;min-height:405px;isolation:isolate}.phone-glow{position:absolute;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,rgba(212,98,255,.3),rgba(106,78,255,.11) 48%,transparent 70%);filter:blur(10px);animation:phoneGlow 5.5s ease-in-out infinite}.phone-orbit{position:absolute;border:1px solid rgba(221,159,255,.28);border-radius:50%;pointer-events:none}.orbit-one{width:310px;height:132px;transform:rotate(-16deg);}.orbit-two{width:265px;height:214px;transform:rotate(44deg);opacity:.45}.phone-frame{position:relative;z-index:2;width:225px;height:422px;padding:10px;border-radius:35px;border:2px solid rgba(255,255,255,.44);background:linear-gradient(145deg,#100c18,#2d1d44 68%,#08070e);box-shadow:0 28px 56px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.32);animation:phoneFloat 5.2s ease-in-out infinite}.phone-speaker{position:absolute;z-index:3;top:18px;left:50%;translate:-50%;width:74px;height:18px;border-radius:99px;background:#09070e;box-shadow:inset 0 1px 1px rgba(255,255,255,.06)}.phone-screen{position:relative;height:100%;overflow:hidden;border-radius:26px;background:linear-gradient(155deg,#060710,#121021 55%,#27183d);color:#fff}.reel-top{position:absolute;z-index:2;left:16px;right:16px;top:25px;display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:1.5px;font-weight:850;color:rgba(255,255,255,.72)}.reel-top i{font-size:11px;letter-spacing:2px}.reel-scene{position:absolute;inset:0;display:grid;place-items:center;transition:opacity .5s,transform .7s}.scene-one{background:radial-gradient(circle at 58% 42%,rgba(229,162,255,.45),transparent 26%),radial-gradient(circle at 54% 52%,rgba(115,92,255,.36),transparent 43%),linear-gradient(155deg,#090a17,#160f28 68%,#27123d)}.scene-one::before{content:"";position:absolute;width:155px;height:155px;border:1px solid rgba(255,255,255,.26);border-radius:50%;box-shadow:0 0 0 24px rgba(213,97,255,.05),0 0 0 48px rgba(179,96,255,.04);animation:planetPulse 4.7s ease-in-out infinite}.scene-one p{position:relative;z-index:1;margin:54px 0 0;font-family:"Sora",sans-serif;font-size:27px;line-height:.86;letter-spacing:-.1em;text-align:center;color:#fff}.scene-one p b{font-family:Georgia,serif;font-weight:400;font-style:italic;color:#f3b1ff}.scene-one span{position:absolute;bottom:76px;width:7px;height:7px;border-radius:50%;background:#f2b1ff;box-shadow:0 0 16px #e8a2ff;animation:scrollBlink 1.5s ease-in-out infinite}.scene-two{opacity:0;transform:translateY(25px);background:linear-gradient(145deg,#0c1020,#2a1750)}.scene-two small{position:absolute;top:100px;font-size:8px;letter-spacing:1.8px;color:#cfc5db}.reel-bars{display:flex;align-items:end;gap:9px;height:118px;margin-top:70px}.reel-bars i{display:block;width:21px;border-radius:8px 8px 3px 3px;background:linear-gradient(#edb4ff,#8058ff);animation:reelBar 1.7s ease-in-out infinite alternate}.reel-bars i:nth-child(1){height:50px}.reel-bars i:nth-child(2){height:91px;animation-delay:.3s}.reel-bars i:nth-child(3){height:67px;animation-delay:.6s}.reel-bars i:nth-child(4){height:103px;animation-delay:.15s}.scene-three{opacity:0;transform:scale(.9);background:radial-gradient(circle at 50% 43%,rgba(255,255,255,.13),transparent 21%),linear-gradient(150deg,#0b0a17,#261734)}.scene-three small{position:absolute;top:108px;font-size:7px;letter-spacing:1.4px;color:#e4c8ed}.scene-three strong{font-family:"Sora",sans-serif;font-size:68px;letter-spacing:-.11em;margin-top:34px;background:linear-gradient(#fff,#d58bff);-webkit-background-clip:text;background-clip:text;color:transparent}.reel-controls{position:absolute;z-index:3;left:16px;right:16px;bottom:19px;display:flex;align-items:center;justify-content:space-between;padding:10px 11px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(8,7,15,.54);backdrop-filter:blur(8px);color:rgba(255,255,255,.82)}.reel-controls span{width:7px;height:7px;border-radius:50%;background:#efadff;box-shadow:0 0 12px rgba(239,173,255,.75)}.reel-controls b{font-size:7px;letter-spacing:1.25px}.reel-controls i{font-style:normal;font-size:14px}.phone-screen.is-screen-two .scene-one{opacity:0;transform:translateY(-25px)}.phone-screen.is-screen-two .scene-two{opacity:1;transform:none}.phone-screen.is-screen-three .scene-one{opacity:0;transform:scale(1.08)}.phone-screen.is-screen-three .scene-three{opacity:1;transform:none}.phone-caption{position:absolute;z-index:2;bottom:4px;left:50%;translate:-50%;display:flex;gap:15px;align-items:center;width:max-content;padding:8px 10px;border-radius:99px;background:color-mix(in srgb,var(--bg) 68%,transparent);border:1px solid var(--line);font-size:7px;letter-spacing:1.1px;color:var(--muted);white-space:nowrap}.phone-caption b{font-size:8px;color:var(--text)}
@keyframes phoneFloat{50%{transform:translateY(-10px) rotate(.5deg)}}@keyframes phoneGlow{50%{transform:scale(1.12);opacity:.74}}@keyframes planetPulse{50%{transform:scale(1.12);opacity:.65}}@keyframes reelBar{to{transform:scaleY(.55);transform-origin:bottom}}

html[data-theme="light"] .service-extensions{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(232,223,243,.7));box-shadow:inset 0 1px 0 rgba(255,255,255,.84)}html[data-theme="light"] .extension-head h3 em,html[data-theme="light"] .momentum-copy h2 em{color:#8b2cad}.service-visual-card{background:linear-gradient(160deg,rgba(255,255,255,.88),rgba(236,229,246,.9));box-shadow:0 14px 28px rgba(54,25,79,.09)}html[data-theme="light"] .service-visual-card:hover{box-shadow:0 22px 38px rgba(54,25,79,.16)}html[data-theme="light"] .service-art{border-bottom-color:rgba(49,28,73,.11)}html[data-theme="light"] .art-browser{border-color:rgba(255,255,255,.53)}html[data-theme="light"] .art-status{background:rgba(255,255,255,.72);border-color:rgba(69,31,101,.14)}html[data-theme="light"] .art-status small{color:#705e79}html[data-theme="light"] .art-status strong{color:#25132f}html[data-theme="light"] .carousel-arrow,html[data-theme="light"] .showcase-nav{background:rgba(255,255,255,.7);box-shadow:0 8px 20px rgba(56,27,84,.08)}html[data-theme="light"] .momentum-panel{background:linear-gradient(135deg,rgba(255,255,255,.84),rgba(233,225,244,.84));box-shadow:0 20px 48px rgba(61,27,93,.12)}html[data-theme="light"] .momentum-panel::before{background:radial-gradient(circle,rgba(174,102,227,.17),transparent 67%)}html[data-theme="light"] .phone-orbit{border-color:rgba(142,65,181,.33)}html[data-theme="light"] .phone-frame{box-shadow:0 28px 48px rgba(76,38,104,.22),inset 0 1px 0 rgba(255,255,255,.46)}html[data-theme="light"] .phone-caption{background:rgba(255,255,255,.72)}

@media (max-width:960px){.service-extensions{margin-top:54px}.extension-head{grid-template-columns:1fr;gap:14px}.extension-head>p{max-width:560px}.momentum-section{padding-bottom:105px}.momentum-panel{grid-template-columns:1fr;gap:22px;padding:52px 42px}.momentum-copy{max-width:640px}.phone-stage{min-height:420px}.phone-frame{width:218px;height:410px}}
@media (max-width:620px){.service-extensions{margin-top:46px;padding:22px 15px 19px;border-radius:22px}.extension-head h3{font-size:clamp(2rem,10vw,3rem)}.extension-head>p{font-size:12px}.drag-note{margin:23px 0 14px;font-size:9px}.service-carousel{grid-template-columns:1fr;gap:9px}.carousel-arrow{display:none}.service-rail{gap:12px;padding-bottom:12px}.service-visual-card{flex-basis:min(266px,82vw);min-height:351px}.service-art{height:174px}.service-card-copy{padding:17px 17px 20px}.service-card-copy h4{font-size:17px}.momentum-section{padding:0 0 76px}.momentum-panel{padding:39px 23px 28px;border-radius:24px;gap:14px;min-height:0}.momentum-copy h2{font-size:clamp(2.45rem,12vw,4rem)}.momentum-text{font-size:13px;margin-top:18px}.momentum-nav{margin-top:25px}.phone-stage{min-height:365px}.phone-frame{width:194px;height:365px;padding:8px;border-radius:30px}.phone-screen{border-radius:23px}.phone-speaker{top:15px;width:64px;height:15px}.reel-top{top:22px;font-size:6.5px}.scene-one p{font-size:24px}.scene-two small,.scene-three small{top:88px}.reel-bars{height:100px;margin-top:58px}.reel-controls{left:12px;right:12px;bottom:14px}.phone-orbit.orbit-one{width:270px;height:115px}.phone-orbit.orbit-two{width:230px;height:183px}.phone-caption{bottom:-4px}.showcase-lines span{width:29px}.showcase-lines span.is-active{width:46px}}
@media (prefers-reduced-motion:reduce){.phone-frame,.phone-glow,.scene-one::before,.scene-one span,.reel-bars i{animation:none!important}.service-rail{scroll-behavior:auto}.service-visual-card{transition:none!important}}


/* v19 — dark mode correction for the draggable service cards.
   The light palette stays unchanged; only the dark card bodies use opaque studio tones. */
html[data-theme="dark"] .service-extensions{
  background:
    radial-gradient(circle at 82% 4%, rgba(179,79,244,.12), transparent 28%),
    linear-gradient(145deg,#111316 0%,#09080e 66%,#0c0911 100%);
  border-color:rgba(234,207,255,.13);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045), 0 22px 46px rgba(0,0,0,.14);
}
html[data-theme="dark"] .service-visual-card{
  background:linear-gradient(180deg,#171123 0 50.35%,#110c18 50.35% 100%);
  border-color:rgba(233,210,255,.18);
  box-shadow:0 16px 34px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.035);
}
html[data-theme="dark"] .service-visual-card:hover{
  background:linear-gradient(180deg,#1c142a 0 50.35%,#16101f 50.35% 100%);
  border-color:rgba(225,133,255,.52);
  box-shadow:0 24px 46px rgba(0,0,0,.38), 0 0 0 1px rgba(222,117,255,.06);
}
html[data-theme="dark"] .service-art{
  border-bottom-color:rgba(238,215,255,.15);
}
html[data-theme="dark"] .service-card-copy{
  background:linear-gradient(145deg,#171122 0%,#111316 100%);
}
html[data-theme="dark"] .service-card-copy h4{color:#FBF6ED;}
html[data-theme="dark"] .service-card-copy p{color:#c2b6cc;}
html[data-theme="dark"] .service-icon{
  background:linear-gradient(135deg,#f0beff,#b450ff);
  color:#24062f;
  box-shadow:0 8px 18px rgba(190,67,244,.28);
}
html[data-theme="dark"] .carousel-arrow,
html[data-theme="dark"] .showcase-nav{
  background:#111316;
  border-color:rgba(236,214,255,.16);
  color:#FBF6ED;
}

/* v20 — NA Insights: an original, lightweight blog library with 12 readable guides. */
.insights-section{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.insights-section::before{
  content:"";
  position:absolute;
  z-index:-1;
  width:700px;
  height:700px;
  border-radius:50%;
  top:-320px;
  right:-260px;
  background:radial-gradient(circle,rgba(184,80,246,.12),transparent 67%);
  pointer-events:none;
}
.insights-head{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(260px,.72fr);
  align-items:end;
  gap:48px;
}
.insights-head .display-title{max-width:790px;}
.insights-intro{
  max-width:405px;
  margin:0 0 8px;
  color:var(--muted);
  font-size:14px;
  line-height:1.7;
}
.insights-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  margin-top:48px;
  padding:13px 0;
  border-block:1px solid var(--line);
}
.insights-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.blog-filter{
  min-height:34px;
  padding:0 13px;
  border:1px solid var(--line);
  border-radius:999px;
  color:var(--muted);
  background:transparent;
  font:inherit;
  font-size:11px;
  font-weight:800;
  letter-spacing:.01em;
  cursor:pointer;
  transition:background .2s,border-color .2s,color .2s,transform .2s;
}
.blog-filter:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--text);}
.blog-filter.is-active{background:var(--accent);border-color:var(--accent);color:#26062d;box-shadow:0 8px 22px rgba(186,71,236,.18);}
.insights-toolbar>p{margin:0;color:var(--subtle);font-size:11px;font-weight:700;white-space:nowrap;}
.insights-toolbar>p span{color:var(--accent);font-weight:900;}
.insights-toolbar-simple{justify-content:flex-start;}
.insights-more{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:6px;
  padding:22px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  box-shadow:var(--shadow-soft);
}
.insights-more strong{display:block;font-size:1.05rem;letter-spacing:-.035em;}
.insights-more p{max-width:720px;margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.65;}
html[data-theme="light"] .insights-more{background:linear-gradient(135deg,#fffdf8,#f0e7d9);border-color:rgba(59,42,25,.12);box-shadow:0 14px 30px rgba(74,52,29,.08)}
@media (max-width:720px){.insights-more{align-items:flex-start;flex-direction:column;padding:18px;border-radius:22px}.insights-more .btn{width:100%;justify-content:center}}

.blog-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:17px;
  margin-top:30px;
}
.blog-card{
  min-width:0;
  border:1px solid var(--line);
  border-radius:20px;
  overflow:hidden;
  background:var(--surface);
  box-shadow:0 12px 30px rgba(0,0,0,.10);
  transition:transform .32s cubic-bezier(.2,.7,.2,1),border-color .32s,box-shadow .32s,opacity .24s;
}
.blog-card.is-hidden{display:none;}
.blog-card:hover{transform:translateY(-6px);border-color:rgba(227,130,255,.55);box-shadow:0 24px 44px rgba(0,0,0,.2);}
.blog-card-button{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer;}
.blog-cover{
  position:relative;
  height:168px;
  overflow:hidden;
  border-bottom:1px solid var(--line);
  background:linear-gradient(145deg,#181024,#0c0b15);
}
.blog-card-featured{grid-column:span 2;}
.blog-card-featured .blog-card-button{display:grid;grid-template-columns:minmax(270px,.95fr) 1.05fr;align-items:stretch;}
.blog-card-featured .blog-cover{height:100%;min-height:235px;border-bottom:0;border-right:1px solid var(--line);}
.blog-card-featured .blog-card-copy{display:flex;flex-direction:column;justify-content:center;padding:30px;}
.cover-index{position:absolute;top:15px;left:17px;z-index:5;color:rgba(255,255,255,.72);font-size:10px;font-weight:900;letter-spacing:.16em;}
.blog-card-copy{padding:20px 20px 18px;}
.blog-meta{margin:0;color:var(--accent);font-size:9px;font-weight:900;letter-spacing:.12em;}
.blog-meta span{color:var(--subtle);margin:0 4px;}
.blog-card h3{margin:11px 0 8px;font-size:clamp(1.15rem,1.5vw,1.45rem);line-height:1.06;letter-spacing:-.055em;}
.blog-card-copy>p:not(.blog-meta){margin:0;color:var(--muted);font-size:12.5px;line-height:1.55;}
.blog-read{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:var(--text);font-size:11px;font-weight:850;transition:gap .2s,color .2s;}
.blog-read i{font-style:normal;color:var(--accent);font-size:15px;line-height:1;}
.blog-card:hover .blog-read{gap:12px;color:var(--accent);}

/* Blog cover artwork — pure CSS, original and lightweight. */
.cover-foundation{background:radial-gradient(circle at 82% 24%,rgba(214,111,255,.38),transparent 22%),linear-gradient(135deg,#25153a,#0c0b16 72%);}
.cover-foundation small,.cover-content small,.cover-local small{position:absolute;bottom:17px;left:17px;color:rgba(255,255,255,.64);font-size:8px;font-weight:900;letter-spacing:.14em;}
.cover-window{position:absolute;left:16%;top:27%;width:58%;height:50%;border:1px solid rgba(255,255,255,.32);border-radius:12px;background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.015));transform:rotate(-7deg);box-shadow:0 18px 30px rgba(0,0,0,.25);}
.cover-window::before{content:"";position:absolute;left:13px;right:13px;top:13px;height:4px;background:linear-gradient(90deg,#d878ff 0 43%,rgba(255,255,255,.22) 43% 62%,rgba(255,255,255,.1) 62%);border-radius:99px;}.cover-window i,.cover-window b,.cover-window em{position:absolute;display:block;border-radius:99px;background:rgba(255,255,255,.17);}.cover-window i{width:43%;height:6px;left:14px;top:40px}.cover-window b{width:27%;height:6px;left:14px;top:56px}.cover-window em{width:38%;height:6px;left:14px;top:72px}.cover-orbit{position:absolute;width:170px;height:170px;right:-34px;bottom:-62px;border:1px solid rgba(224,152,255,.42);border-radius:50%;transform:rotate(-30deg)}.cover-orbit::after{content:"";position:absolute;width:24px;height:24px;left:20px;top:5px;border-radius:50%;background:#e0a3ff;box-shadow:0 0 20px rgba(222,163,255,.8);}

.cover-structure{background:radial-gradient(circle at 20% 18%,rgba(219,119,255,.32),transparent 22%),linear-gradient(130deg,#1b1130,#0c0b16);}.cover-stack{position:absolute;left:24%;top:28%;width:54%;height:59%;}.cover-stack i{position:absolute;left:0;right:0;height:42px;border-radius:10px;border:1px solid rgba(255,255,255,.22);background:linear-gradient(120deg,rgba(196,94,255,.72),rgba(96,73,219,.35));box-shadow:0 12px 22px rgba(0,0,0,.2)}.cover-stack i:nth-child(1){top:0;transform:translateX(18px)}.cover-stack i:nth-child(2){top:31px;transform:translateX(8px);opacity:.86}.cover-stack i:nth-child(3){top:62px;opacity:.65}.cover-structure>b{position:absolute;right:16px;bottom:17px;color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em;line-height:1.12;text-align:right;opacity:.78}

.cover-conversion{background:radial-gradient(circle at 77% 26%,rgba(236,143,255,.4),transparent 20%),linear-gradient(135deg,#261141,#0c0b16)}.cover-route{position:absolute;left:17%;top:29%;width:55%;height:48%;border-left:1px solid rgba(255,255,255,.36);border-bottom:1px solid rgba(255,255,255,.36);border-radius:0 0 0 18px}.cover-route i{position:absolute;width:16px;height:16px;border-radius:50%;background:#dc8aff;box-shadow:0 0 18px rgba(220,138,255,.8)}.cover-route i:nth-child(1){left:-8px;top:-8px}.cover-route i:nth-child(2){left:43%;top:55%;background:#B98546}.cover-route i:nth-child(3){right:-8px;bottom:-8px;background:#fff}.cover-conversion>b{position:absolute;right:18px;top:38px;color:rgba(255,255,255,.88);font-size:15px;line-height:.86;letter-spacing:-.07em}

.cover-speed{background:radial-gradient(circle at 30% 22%,rgba(119,114,255,.35),transparent 23%),linear-gradient(145deg,#14162d,#0b0b15);}.cover-gauge{position:absolute;left:17%;top:25%;width:100px;height:100px;border:10px solid rgba(255,255,255,.14);border-right-color:#cc78ff;border-top-color:#897cff;border-radius:50%;transform:rotate(-30deg);display:grid;place-items:center;box-shadow:0 0 30px rgba(153,90,255,.18)}.cover-gauge b{transform:rotate(30deg);font-size:10px;letter-spacing:.08em;color:#fff}.cover-gauge i{position:absolute;width:38px;height:2px;background:#fff;transform:translate(17px,-9px) rotate(30deg);transform-origin:left}.cover-speed-lines{position:absolute;right:17%;top:44%;display:grid;gap:9px}.cover-speed-lines span{display:block;height:3px;border-radius:99px;background:linear-gradient(90deg,#ce82ff,rgba(255,255,255,.12));}.cover-speed-lines span:nth-child(1){width:66px}.cover-speed-lines span:nth-child(2){width:46px}.cover-speed-lines span:nth-child(3){width:82px}

.cover-seo{background:radial-gradient(circle at 74% 22%,rgba(147,107,255,.33),transparent 21%),linear-gradient(135deg,#112239,#0c0b16);}.cover-search{position:absolute;left:12%;top:27%;right:12%;height:37px;padding:0 12px;border:1px solid rgba(255,255,255,.2);border-radius:8px;display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.07)}.cover-search i{color:#e59cff;font-size:17px;font-style:normal}.cover-search b{font-size:9px;color:rgba(255,255,255,.72)}.cover-chart{position:absolute;left:21%;right:20%;bottom:18%;height:64px;display:flex;align-items:end;gap:8px;border-bottom:1px solid rgba(255,255,255,.24);}.cover-chart i{display:block;flex:1;border-radius:5px 5px 0 0;background:linear-gradient(#e19cff,#7f68ff);box-shadow:0 -8px 18px rgba(183,120,255,.16)}.cover-chart i:nth-child(1){height:24px}.cover-chart i:nth-child(2){height:39px}.cover-chart i:nth-child(3){height:32px}.cover-chart i:nth-child(4){height:51px}.cover-chart i:nth-child(5){height:61px}

.cover-content{background:radial-gradient(circle at 76% 20%,rgba(230,142,255,.34),transparent 20%),linear-gradient(135deg,#26142e,#0e0b17);}.cover-paper{position:absolute;left:29%;top:20%;width:100px;height:120px;padding:24px 18px;border:1px solid rgba(255,255,255,.25);border-radius:7px;background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.06));transform:rotate(6deg);box-shadow:0 15px 26px rgba(0,0,0,.2)}.cover-paper i{display:block;height:5px;margin-bottom:12px;border-radius:99px;background:rgba(255,255,255,.38)}.cover-paper i:nth-child(1){width:75%}.cover-paper i:nth-child(2){width:58%}.cover-paper i:nth-child(3){width:68%}.cover-paper b{position:absolute;right:13px;bottom:13px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#dfa0ff;color:#2c103e;font-size:15px}.cover-content small{left:auto;right:16px}

.cover-trust{background:radial-gradient(circle at 22% 23%,rgba(205,119,255,.28),transparent 21%),linear-gradient(140deg,#221536,#0c0b16);}.cover-shield{position:absolute;left:24%;top:24%;width:72px;height:80px;clip-path:polygon(50% 0,93% 17%,86% 72%,50% 100%,14% 72%,7% 17%);display:grid;place-items:center;background:linear-gradient(145deg,#edb3ff,#8768ff);color:#251034;font-size:28px;box-shadow:0 12px 30px rgba(203,111,255,.25)}.cover-trust-lines{position:absolute;right:17%;top:38%;display:grid;gap:9px}.cover-trust-lines i{display:block;width:65px;height:4px;border-radius:99px;background:rgba(255,255,255,.38)}.cover-trust-lines i:nth-child(2){width:46px}.cover-trust-lines i:nth-child(3){width:57px}

.cover-maintenance{background:radial-gradient(circle at 72% 26%,rgba(224,126,255,.3),transparent 22%),linear-gradient(135deg,#251438,#0c0b16);}.cover-cycle{position:absolute;left:18%;top:30%;color:#e4a4ff;font-size:72px;line-height:1;text-shadow:0 0 28px rgba(224,127,255,.42)}.cover-uptime{position:absolute;right:15%;bottom:21%;padding:12px 13px;border:1px solid rgba(255,255,255,.23);border-radius:10px;background:rgba(10,8,18,.45);box-shadow:0 12px 22px rgba(0,0,0,.22)}.cover-uptime small{display:block;color:rgba(255,255,255,.54);font-size:7px;font-weight:800;letter-spacing:.08em}.cover-uptime b{display:block;margin-top:3px;color:#fff;font-size:18px;letter-spacing:-.08em}

.cover-contact{background:radial-gradient(circle at 74% 27%,rgba(197,139,74,.34),transparent 22%),linear-gradient(135deg,#131c36,#0c0b16);}.cover-chat{position:absolute;left:19%;top:28%;width:116px;height:72px;border:1px solid rgba(255,255,255,.22);border-radius:17px 17px 17px 5px;padding:16px;background:rgba(255,255,255,.07)}.cover-chat::after{content:"";position:absolute;left:0;bottom:-9px;border-width:10px 10px 0 0;border-style:solid;border-color:rgba(255,255,255,.22) transparent transparent transparent}.cover-chat i{display:block;height:5px;margin-bottom:8px;border-radius:999px;background:rgba(255,255,255,.45)}.cover-chat i:nth-child(1){width:75%}.cover-chat i:nth-child(2){width:50%}.cover-chat i:nth-child(3){width:61%}.cover-contact>b{position:absolute;right:18px;bottom:20px;color:#eaa9ff;font-size:13px;letter-spacing:.12em}

.cover-mobile{background:radial-gradient(circle at 70% 20%,rgba(197,139,74,.32),transparent 21%),linear-gradient(135deg,#1c1634,#0c0b16);}.cover-phone{position:absolute;left:38%;top:16%;width:64px;height:124px;padding:8px;border:2px solid rgba(255,255,255,.78);border-radius:16px;background:#0B0C0E;box-shadow:0 14px 30px rgba(0,0,0,.3)}.cover-phone::before{content:"";position:absolute;top:4px;left:50%;width:25px;height:4px;border-radius:99px;background:rgba(255,255,255,.45);transform:translateX(-50%)}.cover-phone i,.cover-phone b,.cover-phone em{display:block;border-radius:5px}.cover-phone i{margin-top:17px;height:33px;background:linear-gradient(135deg,#cf82ff,#6e75ff)}.cover-phone b{height:6px;margin-top:8px;background:rgba(255,255,255,.65)}.cover-phone em{height:6px;margin-top:6px;width:70%;background:rgba(255,255,255,.28)}.cover-mobile-orbit{position:absolute;left:22%;top:24%;width:152px;height:95px;border:1px solid rgba(225,182,106,.4);border-radius:50%;transform:rotate(-20deg)}

.cover-local{background:radial-gradient(circle at 74% 24%,rgba(197,139,74,.33),transparent 22%),linear-gradient(135deg,#17233a,#0c0b16);}.cover-map{position:absolute;left:21%;top:30%;width:59%;height:53%;border:1px solid rgba(255,255,255,.21);border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.015));overflow:hidden}.cover-map::before,.cover-map::after{content:"";position:absolute;background:rgba(255,255,255,.14);transform:rotate(-28deg)}.cover-map::before{width:190px;height:10px;left:-33px;top:37px}.cover-map::after{width:190px;height:6px;left:-21px;top:76px}.cover-map i{position:absolute;width:9px;height:9px;border-radius:50%;background:#DCA95C;box-shadow:0 0 16px rgba(237,171,255,.65)}.cover-map i:nth-child(1){left:24%;top:24%}.cover-map i:nth-child(2){right:24%;top:48%;background:#fff}.cover-map i:nth-child(3){left:47%;bottom:17%;background:#9E7B53}.cover-pin{position:absolute;right:17%;top:23%;z-index:2;width:29px;height:29px;border-radius:50% 50% 50% 0;display:grid;place-items:center;background:#D4A154;color:#3A2919;transform:rotate(-45deg);box-shadow:0 0 20px rgba(223,149,255,.52)}.cover-pin::first-letter{transform:rotate(45deg)}.cover-local small{left:17px}

.cover-redesign{background:radial-gradient(circle at 66% 20%,rgba(197,139,74,.32),transparent 22%),linear-gradient(135deg,#28133a,#0c0b16);display:flex;align-items:center;justify-content:center;gap:12px}.cover-before,.cover-after{display:grid;place-items:center;width:58px;height:58px;border-radius:12px;font-size:11px;font-weight:900;letter-spacing:.07em}.cover-before{background:rgba(255,255,255,.12);color:rgba(255,255,255,.52);border:1px solid rgba(255,255,255,.22)}.cover-after{background:linear-gradient(135deg,#E9C17D,#B98546);color:#2D2116;box-shadow:0 10px 22px rgba(213,124,255,.24)}.cover-arrow{font-size:22px;color:#E0B66A}

.blog-dialog{width:min(760px,calc(100% - 28px));max-height:min(86svh,900px);overflow:auto;padding:26px;border:1px solid var(--line);border-radius:24px;background:var(--bg-soft);color:var(--text);box-shadow:0 34px 100px rgba(0,0,0,.52)}
.blog-dialog::backdrop{background:rgba(4,3,8,.76);backdrop-filter:blur(8px)}
.blog-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.blog-dialog-kicker{margin:0;color:var(--accent);font-size:9px;font-weight:900;letter-spacing:.16em}
.blog-dialog-close{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;color:var(--text);background:transparent;font-size:27px;line-height:1;cursor:pointer;transition:border-color .2s,transform .2s}.blog-dialog-close:hover{border-color:var(--accent);transform:rotate(90deg)}
.blog-dialog-article{max-width:640px;margin:24px auto 0}
.blog-dialog-article h2{margin:0;max-width:590px;font-size:clamp(2rem,4.2vw,3.55rem);line-height:.97;letter-spacing:-.075em}
.blog-dialog-summary{max-width:570px;margin:17px 0 0;color:var(--muted);font-size:15px;line-height:1.65}
.blog-dialog-body{margin-top:30px;color:var(--muted);font-size:14px;line-height:1.78}
.blog-dialog-body p{margin:0 0 18px}.blog-dialog-body h3{margin:29px 0 9px;color:var(--text);font-size:1.16rem;letter-spacing:-.04em}.blog-dialog-body ul{margin:0 0 20px;padding-left:18px}.blog-dialog-body li{margin:6px 0}.blog-dialog-body strong{color:var(--text)}
.blog-dialog-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:34px;padding-top:18px;border-top:1px solid var(--line)}.blog-dialog-bottom>span{color:var(--subtle);font-size:9px;font-weight:850;letter-spacing:.12em}.blog-dialog-project{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--accent);font:inherit;font-size:12px;font-weight:850;cursor:pointer}.blog-dialog-project i{font-style:normal;font-size:16px}

html[data-theme="dark"] .blog-card{background:linear-gradient(145deg,#15101f,#0f0c16);border-color:rgba(234,213,255,.14);box-shadow:0 14px 30px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.025)}
html[data-theme="dark"] .blog-card:hover{border-color:rgba(197,139,74,.56);box-shadow:0 24px 46px rgba(0,0,0,.36),0 0 0 1px rgba(197,139,74,.05)}
html[data-theme="dark"] .blog-dialog{background:#120d1a;border-color:rgba(235,214,255,.16)}
html[data-theme="light"] .insights-section::before{background:radial-gradient(circle,rgba(197,139,74,.14),transparent 67%)}
html[data-theme="light"] .blog-card{background:linear-gradient(145deg,#fff,#F1E8D9);border-color:rgba(59,42,25,.12);box-shadow:0 14px 30px rgba(74,52,29,.10)}
html[data-theme="light"] .blog-card:hover{border-color:rgba(169,113,55,.46);box-shadow:0 24px 44px rgba(74,52,29,.16)}
html[data-theme="light"] .blog-cover{border-bottom-color:rgba(59,42,25,.1)}
html[data-theme="light"] .blog-card-featured .blog-cover{border-right-color:rgba(59,42,25,.1)}
html[data-theme="light"] .blog-dialog{background:#FBF6ED;border-color:rgba(59,42,25,.13);box-shadow:0 34px 100px rgba(74,52,29,.26)}

@media (max-width:960px){
  .insights-head{grid-template-columns:1fr;gap:18px}.insights-intro{max-width:600px;margin:0}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-card-featured{grid-column:span 2}.blog-card-featured .blog-card-button{grid-template-columns:.85fr 1.15fr}.blog-card-featured .blog-cover{min-height:225px}
}
@media (max-width:620px){
  .insights-toolbar{align-items:flex-start;flex-direction:column;margin-top:34px;gap:12px;padding:12px 0}.insights-toolbar>p{white-space:normal}.insights-filters{gap:7px}.blog-filter{font-size:10px;padding:0 11px;min-height:32px}.blog-grid{grid-template-columns:1fr;gap:14px;margin-top:21px}.blog-card-featured{grid-column:auto}.blog-card-featured .blog-card-button{display:block}.blog-card-featured .blog-cover{height:185px;min-height:0;border-right:0;border-bottom:1px solid var(--line)}.blog-card-featured .blog-card-copy{display:block;padding:20px 19px 18px}.blog-cover{height:158px}.blog-card-copy{padding:19px 18px 17px}.blog-dialog{padding:20px;border-radius:19px}.blog-dialog-article{margin-top:19px}.blog-dialog-summary{font-size:14px}.blog-dialog-body{font-size:13px;line-height:1.75}.blog-dialog-bottom{align-items:flex-start;flex-direction:column;gap:14px}.cover-window{left:24%;width:53%}.cover-local .cover-map{left:25%;width:51%}
}


/* v22 phone swipe reliability: keep the rail horizontally interactive without blocking vertical page scroll. */
@media (max-width:620px){
  .service-rail{scroll-snap-stop:always;overscroll-behavior-x:contain;}
  .drag-note{letter-spacing:1px;}
  .carousel-progress{margin-top:11px;}
  .carousel-progress button{min-width:28px;min-height:28px;padding:9px 4px;}
}


/* v23 — fast native phone swipes. Do not hijack touch gestures with JavaScript. */
@media (max-width:620px){
  .service-rail{
    scroll-behavior:auto;
    scroll-snap-type:x proximity;
    scroll-snap-stop:normal;
    touch-action:pan-x pan-y;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:auto;
  }
  .service-rail .service-visual-card{touch-action:auto;}
  .service-rail.is-dragging{scroll-snap-type:x proximity;}
}

/* v24 — desktop-only repair for the Social Media Optimisation service card.
   Mobile/tablet rules are intentionally untouched. */
@media (min-width: 621px){
  .service-rail .service-presence{
    display:flex;
    flex-direction:column;
  }
  .service-rail .service-presence > .art-presence{
    display:block !important;
    position:relative !important;
    flex:0 0 184px !important;
    height:184px !important;
    min-height:184px !important;
    overflow:hidden !important;
    border-bottom:1px solid var(--line) !important;
  }
  .service-rail .service-presence > .service-card-copy{
    display:block !important;
    position:relative !important;
    flex:1 1 auto;
    min-height:0;
  }
}


/* v25: renamed social-media illustration classes to avoid cosmetic ad-block filters on live sites. */


/* v25 theme system: system-aware palette with restrained lime accents */
html { color-scheme: dark; }
html[data-theme="light"] { color-scheme: light; }
body { background-color: var(--bg); }

/* Lime is reserved for the primary conversion action and progress moments. */
.button-primary {
  color: var(--lime-ink);
  background: linear-gradient(112deg, #F4DDA8 0%, var(--lime) 46%, #8A6A3C 100%);
  box-shadow: 0 10px 30px color-mix(in srgb, var(--lime) 22%, transparent);
}
.button-primary:hover { box-shadow: 0 14px 38px color-mix(in srgb, var(--lime) 36%, transparent); }
.button-primary:focus-visible,
.theme-toggle:focus-visible { outline: 3px solid color-mix(in srgb, var(--lime) 72%, white); outline-offset: 3px; }

.loader-line {
  background: linear-gradient(90deg, var(--primary), var(--lime), var(--violet));
  box-shadow: 0 0 18px color-mix(in srgb, var(--lime) 44%, transparent);
}
.loader-rings span::after {
  background: linear-gradient(135deg, var(--lime), var(--violet));
  box-shadow: 0 0 18px color-mix(in srgb, var(--lime) 40%, transparent);
}
.hero-scroll span,
.note-dot { background: var(--lime); box-shadow: 0 0 18px color-mix(in srgb, var(--lime) 65%, transparent); }

/* This keeps the loader readable on short phones and stops the status text/bar from colliding. */
.site-loader { padding: 16px; }
.loader-content {
  display: grid;
  justify-items: center;
  max-height: calc(100svh - 32px);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
}
.loader-content::-webkit-scrollbar { display: none; }
.loader-content > * { min-width: 0; }
.loader-status { min-height: 18px; text-wrap: balance; }
.loader-mini { max-width: 460px; line-height: 1.45; text-wrap: balance; }

/* The switch now clearly communicates the selected theme in either palette. */
.theme-toggle { border-color: color-mix(in srgb, var(--text) 20%, transparent); background: color-mix(in srgb, var(--bg-soft) 74%, transparent); }
.theme-toggle:before { background: linear-gradient(135deg, #FFF9EF, #E8C890); }
html[data-theme="light"] .theme-toggle:before { background: linear-gradient(135deg, var(--primary), var(--violet)); }
html[data-theme="light"] .theme-icon-sun { color: #171310; }

@media (max-width: 420px) {
  .site-loader { padding: 12px; }
  .loader-content { max-height: calc(100svh - 24px); padding: 22px 16px; }
  .loader-title { font-size: clamp(1.7rem, 9.4vw, 2.5rem); line-height: 1.02; }
  .loader-tags { margin: 14px 0; }
  .loader-status { margin-top: 11px; }
  .loader-mini { margin-top: 6px; font-size: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .site-loader, .loader-content, .button-primary, .theme-toggle { transition: none !important; }
}


/* v26 — transparent project journey + premium progress loader */
.site-loader{
  background:
    radial-gradient(900px 620px at 84% 15%, rgba(197,139,74,.26), transparent 62%),
    radial-gradient(660px 520px at 5% 95%, rgba(142,163,113,.08), transparent 58%),
    #08090B;
}
.site-loader::before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.24;
  background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:46px 46px; mask-image:radial-gradient(circle at 50% 50%,#000,transparent 76%);
}
.loader-content{
  width:min(92vw,720px); padding:32px 32px 28px; border-radius:30px;
  background:linear-gradient(145deg,rgba(27,19,42,.9),rgba(13,10,22,.87));
  border-color:rgba(230,218,255,.14); box-shadow:0 30px 100px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.11);
}
.loader-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px}
.loader-studio-chip{padding:7px 10px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:rgba(255,255,255,.62);font-size:8px;font-weight:900;letter-spacing:.13em;background:rgba(255,255,255,.035)}
.loader-mark{width:150px;height:58px;margin:0;border-radius:17px;animation:loaderPulse 2.1s ease-in-out infinite alternate}
.loader-mark img{width:116px}
.loader-kicker{margin:0 0 11px;text-align:left!important;font-size:9px!important;color:#D9C6A6!important}
.loader-title{max-width:560px;margin:0;text-align:left;font-size:clamp(2rem,4.8vw,3.65rem);line-height:.95}
.loader-sub{max-width:540px;margin:15px 0 0;text-align:left;font-size:13px}
.loader-tags{justify-content:flex-start;margin:18px 0 21px}.loader-tags span{font-size:8px;letter-spacing:.12em;background:rgba(255,255,255,.04)}
.loader-meter{padding:13px 14px 11px;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:rgba(2,2,7,.25);box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.loader-meter-head,.loader-meter-foot{display:flex;align-items:center;justify-content:space-between;gap:15px}
.loader-meter-head span{color:rgba(255,255,255,.67);font-size:9px;font-weight:800;letter-spacing:.09em}.loader-meter-head b{color:var(--lime);font-size:11px;letter-spacing:.04em}
.loader-line-wrap{width:100%;height:7px;margin:11px 0 9px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.05)}
.loader-line{width:8%;height:100%;margin:0;animation:none!important;transform:none!important;background:linear-gradient(90deg,var(--primary),var(--violet) 46%,var(--lime));box-shadow:0 0 18px color-mix(in srgb,var(--lime) 45%,transparent);transition:width .18s ease}
.loader-meter-foot{color:rgba(255,255,255,.35);font-size:7px;font-weight:850;letter-spacing:.13em}
.loader-mini{margin:14px 0 0!important;text-align:left!important;font-size:9px!important;letter-spacing:.1em!important;color:rgba(255,255,255,.45)!important}
html[data-theme="light"] .site-loader{background:radial-gradient(900px 620px at 84% 15%,rgba(197,139,74,.20),transparent 62%),radial-gradient(660px 520px at 5% 95%,rgba(142,163,113,.08),transparent 58%),#F8F3EA}
html[data-theme="light"] .loader-content{background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(243,238,249,.9));border-color:rgba(132,94,56,.12);box-shadow:0 30px 90px rgba(70,48,29,.19),inset 0 1px 0 rgba(255,255,255,.72)}
html[data-theme="light"] .loader-studio-chip,html[data-theme="light"] .loader-tags span{border-color:rgba(132,94,56,.12);background:rgba(92,46,130,.05);color:rgba(55,39,26,.61)}
html[data-theme="light"] .loader-kicker{color:#7B5B38!important}.loader-meter{background:rgba(255,255,255,.56);border-color:rgba(132,94,56,.1)}
html[data-theme="light"] .loader-meter-head span,html[data-theme="light"] .loader-mini,html[data-theme="light"] .loader-meter-foot{color:rgba(55,39,26,.54)!important}
html[data-theme="light"] .loader-line-wrap{background:rgba(95,67,40,.09);border-color:rgba(95,67,40,.08)}

.journey-section{position:relative;isolation:isolate;overflow:clip;background:linear-gradient(150deg,color-mix(in srgb,var(--bg-soft) 94%,transparent),color-mix(in srgb,var(--bg) 92%,transparent));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.journey-section::before{content:"";position:absolute;z-index:-1;width:660px;height:660px;right:-300px;top:20%;border-radius:50%;background:radial-gradient(circle,rgba(197,139,74,.16),transparent 68%);filter:blur(12px);pointer-events:none}
.journey-heading{display:grid;grid-template-columns:.72fr 1.15fr;gap:clamp(32px,8vw,120px);align-items:start}
.journey-heading-copy .display-title{margin:0;max-width:760px}.journey-heading-copy>p{max-width:630px;margin:20px 0 0;color:var(--muted);font-size:15px;line-height:1.75}
.journey-scroll{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(330px,.86fr);gap:clamp(38px,7vw,104px);align-items:start;margin-top:76px}
.journey-step-list{position:relative;display:grid;gap:16px;padding-left:26px}.journey-step-list::before{content:"";position:absolute;left:0;top:30px;bottom:32px;width:1px;background:linear-gradient(var(--primary),var(--violet) 54%,var(--lime));opacity:.7}
.journey-step{position:relative;display:grid;grid-template-columns:54px 1fr;gap:18px;min-height:226px;padding:25px 25px 25px 0;border-bottom:1px solid var(--line);transition:border-color .35s,background .35s,box-shadow .35s}
.journey-step::before{content:"";position:absolute;left:-31px;top:32px;width:11px;height:11px;border:2px solid var(--bg-soft);border-radius:50%;background:var(--subtle);box-shadow:0 0 0 1px var(--line);transition:background .35s,box-shadow .35s,transform .35s}
.journey-step.is-current{border-color:color-mix(in srgb,var(--violet) 50%,var(--line));background:linear-gradient(90deg,color-mix(in srgb,var(--violet) 8%,transparent),transparent 82%)}
.journey-step.is-current::before{background:var(--lime);box-shadow:0 0 0 1px color-mix(in srgb,var(--lime) 70%,var(--line)),0 0 22px color-mix(in srgb,var(--lime) 62%,transparent);transform:scale(1.15)}
.journey-step-number{color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.12em;padding-top:3px}.journey-stage-kicker{margin:0;color:var(--lime);font-size:9px;font-weight:900;letter-spacing:.15em}.journey-step h3{max-width:570px;margin:8px 0 0;font-family:"Sora","Plus Jakarta Sans",sans-serif;font-size:clamp(1.45rem,2.4vw,2.25rem);line-height:1.05;letter-spacing:-.065em}.journey-step-copy>p:not(.journey-stage-kicker){max-width:570px;margin:11px 0 0;color:var(--muted);font-size:13px;line-height:1.7}
.journey-checklist{display:flex;flex-wrap:wrap;gap:7px;margin:17px 0 0;padding:0;list-style:none}.journey-checklist li{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 80%,transparent);color:color-mix(in srgb,var(--text) 83%,transparent);font-size:9px;font-weight:800;letter-spacing:.02em}
.journey-visual{--journey-progress:25%;position:sticky;top:94px;min-height:500px;align-self:start;isolation:isolate}.journey-orbit{position:absolute;z-index:-1;border:1px solid color-mix(in srgb,var(--violet) 35%,transparent);border-radius:50%;pointer-events:none}.journey-orbit-one{width:114%;height:70%;right:-22%;top:8%;transform:rotate(-22deg)}.journey-orbit-two{width:80%;height:102%;left:4%;top:-13%;opacity:.4;transform:rotate(31deg)}
.journey-visual-shell{position:relative;overflow:hidden;min-height:500px;padding:15px;border:1px solid color-mix(in srgb,var(--line) 92%,transparent);border-radius:27px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 92%,transparent),color-mix(in srgb,var(--bg) 38%,transparent));box-shadow:var(--shadow),inset 0 1px 0 color-mix(in srgb,var(--white) 12%,transparent);backdrop-filter:blur(10px)}
.journey-visual-head,.journey-visual-foot{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:13px}.journey-visual-head{min-height:31px;padding:0 3px 10px;color:var(--subtle);font-size:8px;font-weight:900;letter-spacing:.13em}.journey-visual-head b{color:var(--text);font-size:8px;white-space:nowrap}.journey-visual-head b::before{content:"";display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px color-mix(in srgb,var(--lime) 72%,transparent)}
.journey-canvas{position:relative;height:397px;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:20px;background:radial-gradient(circle at 50% 45%,rgba(149,94,255,.2),transparent 43%),linear-gradient(145deg,#0B0C0E,#151025 58%,#0b0a14);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.journey-grid{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle at 50% 50%,#000,transparent 78%)}
.journey-frame{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:translateY(17px) scale(.965);transition:opacity .5s ease,transform .65s cubic-bezier(.2,.75,.2,1);pointer-events:none}.journey-visual[data-active="brief"] .journey-frame-brief,.journey-visual[data-active="plan"] .journey-frame-plan,.journey-visual[data-active="build"] .journey-frame-build,.journey-visual[data-active="launch"] .journey-frame-launch{opacity:1;transform:none}
.mock-window-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.67);font-size:8px;font-weight:900;letter-spacing:.11em}.mock-window-head>span{display:flex;gap:4px}.mock-window-head i{display:block;width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.3)}.mock-window-head i:nth-child(1){background:#E1B66A}.mock-window-head i:nth-child(2){background:#8EA371}.mock-window-head em{padding:3px 5px;border-radius:999px;background:rgba(142,163,113,.12);color:#CFD8A6;font-size:7px;font-style:normal}
.brief-console{position:relative;width:min(80%,360px);overflow:hidden;border:1px solid rgba(235,220,196,.17);border-radius:17px;background:linear-gradient(145deg,rgba(29,25,19,.98),rgba(13,13,12,.98));box-shadow:0 26px 50px rgba(0,0,0,.3)}.brief-message{margin:14px 13px 10px;padding:11px 12px;border:1px solid rgba(235,220,196,.16);border-radius:11px;background:rgba(255,255,255,.055);color:rgba(255,255,255,.86);font-size:10px;line-height:1.52}.brief-fields{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:0 13px 14px}.brief-fields div{padding:8px;border-radius:9px;background:rgba(255,255,255,.055)}.brief-fields div:last-child{grid-column:span 2}.brief-fields span{display:block;color:rgba(255,255,255,.46);font-size:7px;font-weight:900;letter-spacing:.1em}.brief-fields b{display:block;margin-top:4px;color:#fff;font-size:8px;letter-spacing:.05em}.brief-route{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-top:1px solid rgba(255,255,255,.1);color:#E7C98F;font-size:7px;font-weight:900;letter-spacing:.1em}.brief-route i{display:block;width:35px;height:1px;background:linear-gradient(90deg,#C58B4A,#8EA371);position:relative}.brief-route i::after{content:"";position:absolute;right:-1px;top:-2px;border-left:4px solid #8EA371;border-top:2.5px solid transparent;border-bottom:2.5px solid transparent}.brief-float{position:absolute;padding:6px 8px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(31,26,19,.86);box-shadow:0 10px 20px rgba(0,0,0,.25);color:#E8D6B8;font-size:7px;font-weight:900;letter-spacing:.1em}.brief-float-a{left:8%;top:18%;animation:journeyFloat 3.8s ease-in-out infinite}.brief-float-b{right:8%;bottom:17%;animation:journeyFloat 4.3s .5s ease-in-out infinite}.brief-float-c{right:7%;top:25%;color:#CFD8A6;animation:journeyFloat 4s 1s ease-in-out infinite}
.blueprint-window{position:relative;width:min(82%,370px);overflow:hidden;border:1px solid rgba(235,220,196,.17);border-radius:17px;background:#111225;box-shadow:0 28px 55px rgba(0,0,0,.32)}.blueprint-nav{display:flex;gap:10px;padding:11px 14px;color:rgba(255,255,255,.43);font-size:7px;font-weight:850;letter-spacing:.09em}.blueprint-nav span:first-child{color:#E7C98F}.blueprint-hero{position:relative;margin:0 13px;height:127px;padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:linear-gradient(130deg,rgba(147,89,244,.41),rgba(236,149,255,.16) 58%,rgba(142,163,113,.11));overflow:hidden}.blueprint-hero small{color:rgba(255,255,255,.58);font-size:7px;font-weight:850;letter-spacing:.1em}.blueprint-hero b{position:relative;z-index:1;display:block;max-width:155px;margin-top:11px;color:white;font-family:"Sora",sans-serif;font-size:20px;line-height:.94;letter-spacing:-.075em}.blueprint-hero i{position:absolute;width:118px;height:118px;right:-22px;bottom:-28px;border:1px solid rgba(255,255,255,.34);border-radius:50%;box-shadow:0 0 0 15px rgba(255,255,255,.05),0 0 0 30px rgba(255,255,255,.035);animation:journeyRotate 11s linear infinite}.blueprint-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:12px 13px 15px}.blueprint-cards span{display:block;height:45px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:linear-gradient(150deg,rgba(255,255,255,.11),rgba(255,255,255,.025))}.blueprint-cards span::before{content:"";display:block;width:58%;height:3px;margin:10px 7px;border-radius:3px;background:rgba(255,255,255,.42)}.blueprint-cursor{position:absolute;right:21px;bottom:42px;width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:#142300;font-weight:900;font-size:13px;box-shadow:0 0 0 7px rgba(142,163,113,.11),0 0 22px rgba(142,163,113,.35);animation:cursorPulse 2s ease-in-out infinite}.blueprint-note{position:absolute;left:10%;bottom:8%;padding:6px 8px;border:1px solid rgba(255,255,255,.14);border-radius:99px;background:rgba(11,9,19,.74);color:#d4b9ff;font-size:7px;font-weight:900;letter-spacing:.12em}
.build-console{position:relative;width:min(83%,382px);overflow:hidden;border:1px solid rgba(235,220,196,.18);border-radius:17px;background:linear-gradient(145deg,#111316,#0B0C0D);box-shadow:0 28px 55px rgba(0,0,0,.32)}.build-content{display:grid;grid-template-columns:.74fr 1fr;gap:10px;padding:15px}.code-lines{display:grid;align-content:start;gap:8px;padding:14px 10px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.035)}.code-lines i{display:block;height:5px;border-radius:99px;background:linear-gradient(90deg,#C58B4A,#E4C282);opacity:.85}.code-lines i:nth-child(2n){width:76%;background:linear-gradient(90deg,#8EA371,#9BA77B)}.code-lines i:nth-child(3n){width:50%;background:rgba(255,255,255,.34)}.code-lines i:nth-child(4){width:90%}.code-lines i:nth-child(5){width:62%}.device-stack{position:relative;min-height:164px}.desktop-preview{position:absolute;left:0;top:5px;width:120px;height:120px;padding:10px;border:1px solid rgba(255,255,255,.2);border-radius:9px;background:linear-gradient(145deg,#2D2417,#111316);box-shadow:0 13px 26px rgba(0,0,0,.25)}.desktop-preview span{display:block;width:32px;height:4px;border-radius:9px;background:#8EA371}.desktop-preview b{display:block;margin-top:20px;color:#fff;font-family:"Sora",sans-serif;font-size:13px;line-height:.95;letter-spacing:-.07em}.desktop-preview i{position:absolute;width:56px;height:56px;right:-9px;bottom:-9px;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:radial-gradient(circle,#E6C791,transparent 63%);opacity:.55}.phone-preview{position:absolute;right:0;bottom:0;width:51px;height:105px;padding:9px 6px;border:2px solid rgba(255,255,255,.36);border-radius:13px;background:linear-gradient(150deg,#2B2116,#0B0C0D);box-shadow:0 13px 25px rgba(0,0,0,.32);animation:phoneTilt 4.2s ease-in-out infinite}.phone-preview span{display:block;width:16px;height:3px;margin:auto;border-radius:99px;background:rgba(255,255,255,.55)}.phone-preview b{display:block;margin-top:20px;color:#E8D2B0;font-size:7px;letter-spacing:.06em;text-align:center}.phone-preview i{display:block;width:25px;height:25px;margin:14px auto 0;border-radius:50%;background:radial-gradient(circle,#8EA371,rgba(142,163,113,.08) 64%,transparent 66%)}.build-dot{position:absolute;border-radius:50%;background:var(--lime);box-shadow:0 0 15px rgba(142,163,113,.72)}.build-dot-a{width:7px;height:7px;left:14%;top:19%;animation:journeyPulse 1.9s ease-in-out infinite}.build-dot-b{width:5px;height:5px;right:12%;top:21%;animation:journeyPulse 2.1s .4s ease-in-out infinite}.build-dot-c{width:5px;height:5px;left:13%;bottom:20%;background:#D1A05A;box-shadow:0 0 15px rgba(225,182,106,.72);animation:journeyPulse 2s .8s ease-in-out infinite}
.launch-console{position:relative;width:min(82%,370px)}.launch-status{display:flex;align-items:center;justify-content:center;gap:7px;margin:0 auto 12px;color:#BAC28F;font-size:8px;font-weight:900;letter-spacing:.12em}.launch-status span,.journey-live-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--lime);box-shadow:0 0 15px rgba(142,163,113,.78);animation:journeyPulse 1.8s ease-in-out infinite}.launch-site{overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:16px;background:#100d1d;box-shadow:0 28px 55px rgba(0,0,0,.34)}.launch-site-head{display:flex;align-items:center;gap:8px;padding:11px 13px;border-bottom:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.58);font-size:8px}.launch-site-head i{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px rgba(142,163,113,.72)}.launch-site-head b{margin-left:auto;color:#DCC49A;font-size:14px}.launch-site-body{position:relative;min-height:207px;padding:22px;overflow:hidden;background:radial-gradient(circle at 76% 33%,rgba(209,126,255,.36),transparent 25%),radial-gradient(circle at 70% 66%,rgba(142,163,113,.14),transparent 25%),linear-gradient(145deg,#17102a,#2a1651 56%,#100c21)}.launch-site-body small{color:rgba(255,255,255,.67);font-size:7px;font-weight:900;letter-spacing:.13em}.launch-site-body strong{position:relative;z-index:1;display:block;margin-top:16px;color:white;font-family:"Sora",sans-serif;font-size:31px;line-height:.91;letter-spacing:-.09em}.launch-site-body strong em{font-family:Georgia,serif;color:#D7A763;font-weight:400}.launch-site-body>span{position:absolute;width:150px;height:150px;right:-31px;bottom:-46px;border:1px solid rgba(255,255,255,.28);border-radius:50%;box-shadow:0 0 0 18px rgba(255,255,255,.05),0 0 0 36px rgba(142,163,113,.045);animation:journeyRotate 12s linear infinite reverse}.launch-route{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:12px;color:#c6b6d6;font-size:7px;font-weight:900;letter-spacing:.08em}.launch-route i{width:24px;height:1px;background:linear-gradient(90deg,#C58B4A,var(--lime));position:relative}.launch-route i::after{content:"";position:absolute;right:-1px;top:-2px;border-left:4px solid var(--lime);border-top:2px solid transparent;border-bottom:2px solid transparent}.launch-ping{position:absolute;right:8%;top:9%;width:14px;height:14px;border-radius:50%;border:1px solid var(--lime);animation:launchPing 2.3s ease-out infinite}
.journey-visual-foot{min-height:40px;padding:12px 4px 0}.journey-visual-foot p{margin:0 auto 0 0;color:var(--muted);font-size:9px;line-height:1.35}.journey-visual-foot b{color:var(--text);font-size:8px;letter-spacing:.1em;white-space:nowrap}
@keyframes journeyFloat{50%{transform:translateY(-9px)}}@keyframes journeyRotate{to{transform:rotate(360deg)}}@keyframes cursorPulse{50%{transform:scale(1.15);box-shadow:0 0 0 10px rgba(142,163,113,.06),0 0 26px rgba(142,163,113,.42)}}@keyframes journeyPulse{50%{transform:scale(1.34);opacity:.62}}@keyframes phoneTilt{50%{transform:translateY(-7px) rotate(2deg)}}@keyframes launchPing{0%{transform:scale(.55);opacity:1}80%,100%{transform:scale(4);opacity:0}}
html[data-theme="light"] .journey-section{background:linear-gradient(150deg,rgba(241,236,248,.94),rgba(250,248,255,.96))}.journey-section::before{background:radial-gradient(circle,rgba(197,139,74,.12),transparent 68%)}html[data-theme="light"] .journey-visual-shell{background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(241,235,248,.78));box-shadow:0 22px 56px rgba(71,37,104,.15),inset 0 1px 0 rgba(255,255,255,.9)}html[data-theme="light"] .journey-step.is-current{background:linear-gradient(90deg,rgba(197,139,74,.07),transparent 82%)}
@media (max-width:960px){.journey-heading{grid-template-columns:1fr;gap:18px}.journey-heading-copy>p{max-width:660px}.journey-scroll{grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:34px}.journey-step-list{padding-left:22px}.journey-step{grid-template-columns:42px 1fr;gap:12px}.journey-step::before{left:-27px}.journey-visual{top:82px}.journey-visual-shell{min-height:468px}.journey-canvas{height:365px}}
@media (max-width:760px){.journey-scroll{grid-template-columns:1fr;margin-top:48px}.journey-visual{position:relative;top:auto;order:-1;min-height:0;max-width:620px}.journey-visual-shell{min-height:0}.journey-canvas{height:370px}.journey-step-list{gap:4px}.journey-step{min-height:0;padding:23px 12px 23px 0}.journey-step-list::before{bottom:35px}}
@media (max-width:520px){.loader-content{width:min(94vw,480px);padding:22px 18px 18px;border-radius:23px}.loader-topline{margin-bottom:9px}.loader-mark{width:126px;height:51px}.loader-mark img{width:98px}.loader-studio-chip{font-size:7px;padding:6px 8px}.loader-kicker{font-size:8px!important}.loader-title{font-size:clamp(1.8rem,9vw,2.75rem)}.loader-sub{font-size:12px;line-height:1.5}.loader-tags{gap:6px;margin:15px 0}.loader-tags span{font-size:7px;padding:6px 8px}.loader-meter{padding:11px}.loader-meter-head span{font-size:8px}.loader-mini{font-size:8px!important}.journey-heading-copy>p{font-size:13px}.journey-step{grid-template-columns:38px 1fr;gap:10px}.journey-step-list{padding-left:18px}.journey-step::before{left:-23px}.journey-step h3{font-size:clamp(1.35rem,6vw,1.8rem)}.journey-step-copy>p:not(.journey-stage-kicker){font-size:12px}.journey-checklist{gap:6px}.journey-checklist li{font-size:8px}.journey-canvas{height:332px;border-radius:17px}.journey-visual-shell{padding:11px;border-radius:22px}.journey-visual-head{font-size:7px}.journey-visual-head b{font-size:7px}.brief-console,.blueprint-window,.build-console,.launch-console{width:min(87%,330px)}.brief-float{font-size:6px;padding:5px 6px}.brief-float-a{left:4%}.brief-float-b{right:4%}.brief-float-c{right:2%}.blueprint-hero{height:115px}.blueprint-hero b{font-size:18px}.build-content{padding:11px;gap:7px}.desktop-preview{width:106px;height:107px}.desktop-preview b{font-size:11px}.phone-preview{width:45px;height:93px}.launch-site-body{min-height:182px}.launch-site-body strong{font-size:28px}.journey-visual-foot p{font-size:8px}}
@media (prefers-reduced-motion:reduce){.journey-frame,.journey-step,.journey-step::before,.loader-line{transition:none!important}.brief-float,.blueprint-hero i,.blueprint-cursor,.phone-preview,.build-dot,.launch-status span,.journey-live-dot,.launch-site-body>span,.launch-ping{animation:none!important}}


/* v27 — Obsidian + Champagne rebrand: removes the purple AI-template feel while keeping light mode clean. */
:root{
  --bg:#08090B;
  --bg-soft:#111316;
  --surface:rgba(255,255,255,.055);
  --surface-strong:rgba(255,255,255,.09);
  --text:#F7F2EA;
  --muted:#B9B0A4;
  --subtle:#81776C;
  --line:rgba(255,255,255,.12);
  --primary:#C58B4A;
  --violet:#E1B66A;
  --accent:#C58B4A;
  --accent-2:#E1B66A;
  --accent-glow:rgba(197,139,74,.30);
  --lime:#8EA371;
  --lime-ink:#172012;
  --white:#fff;
  --shadow:0 22px 60px rgba(0,0,0,.34);
}
html[data-theme="light"]{
  --bg:#F8F3EA;
  --bg-soft:#EFE7D9;
  --surface:rgba(70,47,28,.055);
  --surface-strong:rgba(70,47,28,.095);
  --text:#171310;
  --muted:#685D51;
  --subtle:#8A7D70;
  --line:rgba(59,42,25,.14);
  --primary:#A97137;
  --violet:#C9954E;
  --accent:#A97137;
  --accent-2:#C9954E;
  --accent-glow:rgba(169,113,55,.18);
  --lime:#6E8157;
  --lime-ink:#10170E;
  --shadow:0 18px 50px rgba(74,52,29,.13);
}
body{background:var(--bg);color:var(--text)}
.site-header.scrolled{background:color-mix(in srgb,var(--bg) 86%,transparent);}
.button-primary{
  color:#1D140A;
  background:linear-gradient(112deg,#FFF0CD 0%,#E1B66A 46%,#B77A3D 100%);
  box-shadow:0 12px 32px rgba(197,139,74,.25);
}
.button-primary:hover{box-shadow:0 16px 42px rgba(197,139,74,.38)}
.button-ghost:hover,.carousel-arrow:hover,.showcase-nav:hover{border-color:color-mix(in srgb,var(--accent) 62%,var(--line));}
.theme-toggle{background:color-mix(in srgb,var(--bg-soft) 78%,transparent);border-color:color-mix(in srgb,var(--text) 20%,transparent)}
.theme-toggle:before{background:linear-gradient(135deg,#FFF8EC,#DAB36E)}
html[data-theme="light"] .theme-toggle:before{background:linear-gradient(135deg,#A97137,#D0A057)}
html[data-theme="light"] .theme-icon-sun{color:#171310}
.brand-name{color:#F7F2EA}.brand-sub{color:rgba(247,242,234,.72)}
html[data-theme="light"] .brand-name{color:#171310}html[data-theme="light"] .brand-sub{color:rgba(23,19,16,.70)}
.hero{background:radial-gradient(700px 520px at 82% 48%,rgba(197,139,74,.26),transparent 60%),radial-gradient(520px 420px at 88% 44%,rgba(225,182,106,.12),transparent 58%),linear-gradient(105deg,#07080A 0%,#0B0D10 48%,#15110C 100%)}
.hero-shade{background:linear-gradient(90deg,rgba(7,8,10,.96) 0%,rgba(7,8,10,.90) 46%,rgba(18,15,10,.42) 77%,rgba(18,15,10,.14) 100%)!important}
.hero h1 em,.statement-title em,.extension-head h3 em,.momentum-copy h2 em{color:#E1B66A}
.hero-copy{color:#D7CABE}.hero-meta span{color:#B9B0A4}.hero-scroll{color:#B9B0A4}
html[data-theme="light"] .hero{background:radial-gradient(650px 520px at 82% 48%,rgba(197,139,74,.18),transparent 60%),radial-gradient(450px 380px at 88% 44%,rgba(225,182,106,.15),transparent 58%),linear-gradient(110deg,#F8F3EA 0%,#EFE6D8 52%,#E3D5C1 100%)}
html[data-theme="light"] .hero-shade{background:linear-gradient(90deg,rgba(248,243,234,.97) 0%,rgba(248,243,234,.91) 47%,rgba(239,230,216,.56) 77%,rgba(226,213,194,.22) 100%)!important}
html[data-theme="light"] .hero h1,html[data-theme="light"] .display-title,html[data-theme="light"] .contact-copy h2{color:#171310}
html[data-theme="light"] .hero h1 em{color:#8F5F30}
html[data-theme="light"] .hero-copy{color:#5F554B;font-weight:550}html[data-theme="light"] .hero-meta strong{color:#171310}html[data-theme="light"] .hero-meta span{color:#6D6257}
/* Hero planet becomes a muted metallic object, not a purple AI orb. */
.hero-planet .hero-object-glow{background:radial-gradient(circle at 44% 48%,rgba(197,139,74,.58),rgba(225,182,106,.24) 36%,rgba(205,163,96,.12) 54%,transparent 72%),radial-gradient(circle at 70% 44%,rgba(255,255,255,.14),transparent 24%)}
.planet-aura{background:radial-gradient(circle,rgba(197,139,74,.16),rgba(225,182,106,.07) 54%,transparent 72%)}
.planet-core{background:radial-gradient(circle at 31% 26%,rgba(255,255,255,.66),rgba(255,255,255,.11) 18%,transparent 26%),radial-gradient(circle at 74% 68%,rgba(205,163,96,.22),transparent 33%),radial-gradient(circle at 52% 52%,rgba(225,182,106,.10),transparent 46%),linear-gradient(145deg,#F0C985 0%,#C58B4A 34%,#85572A 67%,#3A2A1C 100%);box-shadow:inset -20px -22px 34px rgba(49,35,22,.58),inset 12px 10px 20px rgba(255,255,255,.14),0 28px 64px rgba(0,0,0,.28)}
.planet-ring{border-color:rgba(225,182,106,.58);box-shadow:0 0 18px rgba(197,139,74,.14)}.ring-front::after,.ring-back::after{border-color:rgba(205,163,96,.42)}
.planet-moon{background:radial-gradient(circle at 34% 30%,rgba(255,255,255,.70),rgba(255,255,255,.10) 24%,transparent 30%),linear-gradient(145deg,rgba(225,182,106,.86),rgba(139,95,49,.82))}.planet-particle{box-shadow:0 0 18px rgba(225,182,106,.62)}
html[data-theme="light"] .hero-planet .hero-object-glow{background:radial-gradient(circle at 44% 48%,rgba(197,139,74,.28),rgba(225,182,106,.14) 36%,rgba(205,163,96,.08) 54%,transparent 72%)}
html[data-theme="light"] .planet-core{box-shadow:inset -18px -20px 30px rgba(91,67,42,.22),inset 12px 10px 20px rgba(255,255,255,.30),0 20px 42px rgba(119,85,48,.12)}
/* Loader, section glows and project journey align with the new neutral-premium brand. */
.site-loader{background:radial-gradient(900px 620px at 84% 15%,rgba(197,139,74,.22),transparent 62%),radial-gradient(660px 520px at 5% 95%,rgba(142,163,113,.07),transparent 58%),#08090B}
.loader-content{background:linear-gradient(145deg,rgba(29,25,19,.92),rgba(13,13,12,.9));border-color:rgba(235,220,196,.14)}
.loader-mark img{filter:drop-shadow(0 10px 22px rgba(197,139,74,.20))}.loader-kicker{color:#D9C6A6!important}.loader-tags span{color:#E8D6B8}.loader-line{background:linear-gradient(90deg,#A97137,#E1B66A 54%,#8EA371);box-shadow:0 0 18px rgba(197,139,74,.35)}
html[data-theme="light"] .site-loader{background:radial-gradient(900px 620px at 84% 15%,rgba(197,139,74,.16),transparent 62%),radial-gradient(660px 520px at 5% 95%,rgba(142,163,113,.06),transparent 58%),#F8F3EA}
html[data-theme="light"] .loader-content{background:linear-gradient(145deg,rgba(255,252,246,.94),rgba(242,234,222,.92));border-color:rgba(132,94,56,.12);box-shadow:0 30px 90px rgba(74,52,29,.16),inset 0 1px 0 rgba(255,255,255,.72)}
html[data-theme="light"] .loader-kicker{color:#7B5B38!important}html[data-theme="light"] .loader-studio-chip,html[data-theme="light"] .loader-tags span{border-color:rgba(132,94,56,.13);background:rgba(132,94,56,.05);color:rgba(55,39,26,.64)}
.section + .section::before,.section + section::before,section + .section::before{background:radial-gradient(60% 110% at 50% 100%,rgba(197,139,74,.10),transparent 62%)}
.intro-section::after,.work-section::after,.pricing-section::after,.faq-section::after{background:linear-gradient(90deg,transparent,rgba(197,139,74,.42),transparent)}
.statement-inner:before{background:radial-gradient(circle,rgba(197,139,74,.16),transparent 64%)}
.statement-title em{color:#E1B66A!important}.statement-title span{-webkit-text-stroke:1px color-mix(in srgb,var(--text) 58%,transparent)}
.price-card-featured{border-color:rgba(225,182,106,.50);background:linear-gradient(155deg,rgba(197,139,74,.13),var(--surface) 58%,transparent)}
.featured-chip{background:linear-gradient(105deg,#F3D9A4,#B77A3D);color:#1D140A}.plan-label,.service-no,.service-arrow,.section-kicker span,.extension-kicker,.momentum-eyebrow,.blog-dialog-kicker{color:var(--accent)}
.journey-section::before{background:radial-gradient(circle,rgba(197,139,74,.13),transparent 68%)}.journey-step-list::before{background:linear-gradient(var(--primary),var(--violet) 54%,var(--lime))}.journey-step.is-current{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent 82%)}
.brief-orb,.brief-orb::before,.brief-orb::after{border-color:rgba(225,182,106,.34)}.brief-float,.blueprint-note,.launch-route{color:#E7C98F}.blueprint-hero{background:linear-gradient(130deg,rgba(197,139,74,.38),rgba(225,182,106,.14) 58%,rgba(142,163,113,.08))}.build-console,.blueprint-window,.launch-site{background:linear-gradient(145deg,#15130F,#0B0C0D)}.code-lines i{background:linear-gradient(90deg,#A97137,#E1B66A)}.code-lines i:nth-child(2n){background:linear-gradient(90deg,#8EA371,#B8BE8C)}.desktop-preview{background:linear-gradient(145deg,#2D2417,#111316)}.launch-site-body{background:radial-gradient(circle at 76% 33%,rgba(225,182,106,.28),transparent 25%),radial-gradient(circle at 70% 66%,rgba(142,163,113,.12),transparent 25%),linear-gradient(145deg,#15110C,#2D2116 56%,#0D0E0F)}.launch-site-body strong em{color:#E1B66A}
html[data-theme="light"] .journey-section{background:linear-gradient(150deg,rgba(239,231,217,.94),rgba(248,243,234,.96))}html[data-theme="light"] .journey-visual-shell{background:linear-gradient(145deg,rgba(255,252,246,.86),rgba(239,231,217,.80));box-shadow:0 22px 56px rgba(74,52,29,.13),inset 0 1px 0 rgba(255,255,255,.9)}html[data-theme="light"] .journey-step.is-current{background:linear-gradient(90deg,rgba(197,139,74,.07),transparent 82%)}
.cover-contact,.cover-mobile,.cover-local,.cover-redesign,.service-art{background:radial-gradient(circle at 74% 24%,rgba(197,139,74,.26),transparent 22%),linear-gradient(135deg,#1B1712,#0B0C0D)}.cover-after{background:linear-gradient(135deg,#E1B66A,#A97137);color:#1D140A}.cover-arrow,.cover-contact>b{color:#E1B66A}.cover-phone i{background:linear-gradient(135deg,#D3A15A,#8EA371)}.cover-pin{background:#D3A15A;color:#2A1A0E}.cover-map i{background:#D3A15A}.cover-map i:nth-child(3){background:#8EA371}
html[data-theme="light"] .insights-section::before{background:radial-gradient(circle,rgba(197,139,74,.12),transparent 67%)}html[data-theme="light"] .blog-card{background:linear-gradient(145deg,#FFFDF8,#F0E7D9);border-color:rgba(59,42,25,.12);box-shadow:0 14px 30px rgba(74,52,29,.09)}html[data-theme="light"] .blog-dialog{background:#FBF6ED;border-color:rgba(59,42,25,.13);box-shadow:0 34px 100px rgba(74,52,29,.22)}


/* v28 — Integrated prototype library: moved above studio work and bundled prototype folders. */
.anchor-offset{position:relative;top:-92px;display:block;height:0;overflow:hidden}.prototype-library{position:relative;overflow:hidden}.prototype-library::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(700px 420px at 9% 18%,rgba(197,139,74,.13),transparent 64%),radial-gradient(520px 360px at 92% 50%,rgba(225,182,106,.08),transparent 68%);opacity:.8}.prototype-library>*{position:relative}.prototype-heading{display:grid;grid-template-columns:.72fr 1.16fr;gap:60px;align-items:start}.prototype-intro p{margin:19px 0 0;max-width:600px;color:var(--muted);font-size:15px;line-height:1.75}.prototype-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.proto-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:54px;perspective:1200px}.proto-card{min-height:315px;border:1px solid var(--line);border-radius:28px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:24px;background:linear-gradient(160deg,var(--surface-strong),var(--surface));box-shadow:var(--shadow);transform-style:preserve-3d;transition:transform .36s cubic-bezier(.2,.7,.2,1),box-shadow .36s,border-color .36s}.proto-card::before{content:"";position:absolute;inset:0;background:var(--img);background-size:cover;background-position:center;opacity:.28;transform:scale(1.01);transition:transform .55s cubic-bezier(.2,.7,.2,1),opacity .35s}.proto-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.78) 100%),radial-gradient(circle at 24% 14%,rgba(225,182,106,.16),transparent 36%)}.proto-card>*{position:relative;z-index:1}.proto-card:hover{transform:translateY(-8px) rotateX(3deg) rotateY(-3deg);border-color:rgba(225,182,106,.48);box-shadow:0 34px 80px rgba(0,0,0,.38),0 0 0 1px rgba(225,182,106,.08)}.proto-card:hover::before{transform:scale(1.08);opacity:.42}.proto-tag{display:inline-flex;width:max-content;padding:7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.10);font-size:11px;font-weight:900;color:#F1D8AA}.proto-card h3{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.9rem,2.6vw,2.7rem);line-height:.94;letter-spacing:-.06em;margin:17px 0 10px;color:#FFF8EA;text-shadow:0 2px 18px rgba(0,0,0,.30)}.proto-card p{margin:0;color:#E2D5C8;font-size:14px;line-height:1.65;max-width:230px}.proto-card strong{font-size:14px;color:#FFF8EA}.studio-work{padding-top:90px}.studio-work .work-heading .section-kicker span{color:var(--accent)}html[data-theme="light"] .prototype-library::before{background:radial-gradient(640px 420px at 7% 18%,rgba(197,139,74,.12),transparent 64%),radial-gradient(520px 360px at 90% 50%,rgba(169,113,55,.08),transparent 68%)}html[data-theme="light"] .proto-card{border-color:rgba(59,42,25,.14);box-shadow:0 22px 52px rgba(74,52,29,.13)}html[data-theme="light"] .proto-card::before{opacity:.34}html[data-theme="light"] .proto-card::after{background:linear-gradient(180deg,rgba(23,19,16,.12) 0%,rgba(23,19,16,.74) 100%),radial-gradient(circle at 24% 14%,rgba(225,182,106,.14),transparent 36%)}html[data-theme="light"] .proto-card:hover{box-shadow:0 30px 70px rgba(74,52,29,.20),0 0 0 1px rgba(169,113,55,.08)}
@media(max-width:960px){.prototype-heading{grid-template-columns:1fr;gap:24px}.proto-grid{grid-template-columns:1fr 1fr}.desktop-nav{gap:16px}.desktop-nav a{font-size:12px}}
@media(max-width:620px){.proto-grid{grid-template-columns:1fr;margin-top:36px}.proto-card{min-height:285px}.prototype-actions .button{width:100%}.studio-work{padding-top:70px}}

/* Prototype library layout update: fill the left side and remove unused blank space */
.prototype-heading-left{
  grid-template-columns: minmax(0, 780px) !important;
  justify-content: start;
  gap: 18px !important;
}
.prototype-heading-left .prototype-intro{
  max-width: 780px;
}
.prototype-heading-left .prototype-intro p{
  max-width: 720px;
}
.prototype-disclaimer{
  margin-top: 14px !important;
  padding-left: 18px;
  border-left: 2px solid rgba(225,182,106,.55);
  color: var(--text) !important;
  opacity: .86;
}
html[data-theme="light"] .prototype-disclaimer{
  color: var(--text) !important;
  border-left-color: rgba(169,113,55,.45);
}
@media(max-width:960px){
  .prototype-heading-left{grid-template-columns:1fr !important;}
  .prototype-heading-left .prototype-intro,
  .prototype-heading-left .prototype-intro p{max-width:100%;}
}


/* Legal pages */
.legal-page{background:var(--bg);color:var(--text)}
.legal-page .site-header{background:color-mix(in srgb,var(--bg) 78%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.legal-hero{position:relative;overflow:hidden;padding:164px 0 72px;background:radial-gradient(circle at 20% 5%,var(--accent-glow),transparent 34%),linear-gradient(180deg,color-mix(in srgb,var(--bg-soft) 70%,transparent),var(--bg));border-bottom:1px solid var(--line)}
.legal-hero:before{content:"";position:absolute;inset:0;opacity:.16;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(180deg,#000,transparent 78%)}
.legal-orb{position:absolute;border-radius:50%;filter:blur(8px);opacity:.48;pointer-events:none;background:radial-gradient(circle,var(--accent-2),transparent 62%)}
.legal-orb-a{width:270px;height:270px;right:9%;top:105px}.legal-orb-b{width:170px;height:170px;left:7%;bottom:-60px;background:radial-gradient(circle,var(--lime),transparent 65%)}
.legal-hero-inner{position:relative;z-index:1;max-width:920px;margin-inline:auto;text-align:center}.legal-eyebrow{margin:0 0 18px;font-size:11px;font-weight:900;letter-spacing:2.1px;color:var(--accent);text-transform:uppercase}.legal-hero h1{margin:0;font-family:Sora,Inter,system-ui,sans-serif;font-size:clamp(3rem,7vw,6.2rem);line-height:.92;letter-spacing:-.07em}.legal-hero h1+p{margin:24px auto 0;max-width:760px;color:var(--muted);font-size:clamp(1rem,1.6vw,1.18rem)}.legal-meta{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:28px}.legal-meta span{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:9px 13px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}
.legal-body{padding-top:82px}.legal-layout{display:grid;grid-template-columns:260px minmax(0,820px);gap:32px;align-items:start;justify-content:center}.legal-side{position:sticky;top:98px;border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:18px;display:grid;gap:8px;box-shadow:var(--shadow)}.legal-side span{font-size:10px;font-weight:900;letter-spacing:1.7px;text-transform:uppercase;color:var(--subtle);margin-bottom:6px}.legal-side a{border-radius:13px;padding:10px 12px;color:var(--muted);font-size:13px;font-weight:750;transition:background .2s,color .2s}.legal-side a:hover,.legal-side a[aria-current="page"]{background:var(--surface-strong);color:var(--text)}.legal-card{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 82%,transparent);border-radius:28px;padding:clamp(24px,5vw,54px);box-shadow:var(--shadow)}.legal-card h2{margin:34px 0 10px;font-family:Sora,Inter,system-ui,sans-serif;font-size:clamp(1.35rem,2.8vw,2rem);letter-spacing:-.045em;line-height:1.08}.legal-card h2:first-child{margin-top:0}.legal-card p,.legal-card li{color:var(--muted);font-size:15px}.legal-card p{margin:0 0 16px}.legal-card ul{margin:0 0 18px;padding-left:21px}.legal-card li{margin:8px 0}.legal-card strong{color:var(--text)}.legal-card a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.legal-notice,.legal-contact-box{border:1px solid var(--line);background:var(--surface-strong);border-radius:18px;padding:18px 20px;margin:0 0 30px;color:var(--muted)}.legal-contact-box{margin:42px 0 0}.legal-contact-box h2{margin:0 0 8px}.legal-contact-box p{margin:0}.form-note a{color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:800}
html[data-theme="light"] .legal-page .site-header{background:color-mix(in srgb,var(--bg) 86%,transparent)}
html[data-theme="light"] .legal-card,html[data-theme="light"] .legal-side{background:rgba(255,255,255,.5)}
@media (max-width:960px){.legal-layout{grid-template-columns:1fr}.legal-side{position:relative;top:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.legal-side span{grid-column:1/-1}.legal-hero{padding-top:132px}.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.legal-hero{padding:112px 0 54px}.legal-layout{gap:22px}.legal-card{border-radius:22px}.legal-side{grid-template-columns:1fr}.legal-body{padding-top:50px}.legal-meta{justify-content:flex-start}.legal-hero-inner{text-align:left}.footer-grid{grid-template-columns:1fr}}

/* v29 — premium trust additions: portfolio proof, about, payment timeline, FAQ and WhatsApp CTA */
.portfolio-section,
.payment-section{position:relative;isolation:isolate;overflow:hidden}
.portfolio-section::before,
.payment-section::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(620px 420px at 12% 12%,rgba(197,139,74,.12),transparent 66%),radial-gradient(560px 380px at 88% 70%,rgba(142,163,113,.10),transparent 68%);opacity:.9}
.portfolio-head,
.payment-head{display:grid;grid-template-columns:.72fr 1.18fr;gap:clamp(30px,7vw,96px);align-items:start}
.portfolio-title-wrap p,
.payment-title-wrap p{max-width:680px;margin:19px 0 0;color:var(--muted);font-size:15px;line-height:1.75}
.portfolio-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:56px}
.portfolio-card{min-height:420px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 92%,transparent),color-mix(in srgb,var(--surface) 74%,transparent));box-shadow:var(--shadow);overflow:hidden;display:grid;grid-template-rows:210px 1fr;position:relative}
.portfolio-card-large{grid-row:span 2;grid-template-rows:330px 1fr;min-height:676px}
.portfolio-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 30%,rgba(255,255,255,.035));opacity:.7}
.portfolio-visual{position:relative;overflow:hidden;background:linear-gradient(135deg,#161310,#08090b);border-bottom:1px solid var(--line)}
.portfolio-visual::before{content:"";position:absolute;inset:-18%;background:radial-gradient(circle at 30% 20%,rgba(225,182,106,.34),transparent 28%),radial-gradient(circle at 76% 68%,rgba(142,163,113,.24),transparent 30%);filter:blur(2px)}
.case-chip{position:absolute;left:18px;top:18px;z-index:2;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(255,255,255,.08);padding:8px 10px;color:#F8E6C3;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(10px)}
.case-window{position:absolute;left:clamp(24px,5vw,56px);right:clamp(24px,5vw,56px);bottom:34px;z-index:1;border:1px solid rgba(255,255,255,.16);border-radius:24px;padding:26px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.04));box-shadow:0 20px 60px rgba(0,0,0,.36);backdrop-filter:blur(14px)}
.case-window b{display:block;color:#FFF8EA;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.1rem,4.8vw,4.4rem);line-height:.9;letter-spacing:-.08em;margin-bottom:22px}.case-window i{display:block;height:9px;border-radius:999px;background:rgba(255,255,255,.16);margin-top:9px}.case-window i:nth-child(2){width:84%}.case-window i:nth-child(3){width:62%}.case-window i:nth-child(4){width:38%;background:linear-gradient(90deg,var(--primary),var(--lime))}
.mini-phone{position:absolute;right:28px;bottom:24px;z-index:1;width:150px;height:190px;border:1px solid rgba(255,255,255,.16);border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.05));box-shadow:0 20px 48px rgba(0,0,0,.28);padding:20px;display:grid;align-content:end;gap:8px}.mini-phone b{color:#FFF8EA;font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;line-height:.92}.mini-phone i{display:block;height:8px;border-radius:999px;background:rgba(255,255,255,.18)}.mini-phone i:last-child{width:56%;background:var(--primary)}
.catalog-grid{position:absolute;inset:auto 24px 24px 24px;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.catalog-grid i{display:block;aspect-ratio:1.25;border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.2),rgba(255,255,255,.055));border:1px solid rgba(255,255,255,.12)}.catalog-grid i:nth-child(2){background:linear-gradient(135deg,rgba(225,182,106,.38),rgba(255,255,255,.08))}.catalog-grid i:nth-child(3){background:linear-gradient(135deg,rgba(142,163,113,.34),rgba(255,255,255,.07))}
.portfolio-copy{position:relative;z-index:2;padding:24px;display:flex;flex-direction:column;align-items:flex-start}.portfolio-label{display:inline-flex;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.14em}.portfolio-copy h3{margin:10px 0 11px;font-family:"Sora","Plus Jakarta Sans",sans-serif;font-size:clamp(1.45rem,2.4vw,2.2rem);line-height:1.04;letter-spacing:-.055em}.portfolio-copy p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}.portfolio-copy ul{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 0;padding:0;list-style:none}.portfolio-copy li{border:1px solid var(--line);border-radius:999px;padding:7px 9px;color:var(--muted);font-size:10px;font-weight:800}.portfolio-copy a{margin-top:auto;padding-top:20px;color:var(--text);font-size:13px;font-weight:900}.portfolio-copy a span{color:var(--accent)}
.about-section{position:relative;overflow:hidden;background:linear-gradient(150deg,color-mix(in srgb,var(--bg-soft) 88%,transparent),var(--bg));border-block:1px solid var(--line)}
.about-section::before{content:"";position:absolute;right:-220px;top:12%;width:580px;height:580px;border-radius:50%;background:radial-gradient(circle,rgba(197,139,74,.14),transparent 68%);pointer-events:none}.about-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.72fr);gap:clamp(34px,7vw,92px);align-items:center}.about-copy .display-title{margin:15px 0 0}.about-copy p{max-width:680px;margin:22px 0 0;color:var(--muted);font-size:15px;line-height:1.8}.about-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.about-panel{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:30px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 96%,transparent),color-mix(in srgb,var(--bg) 45%,transparent));box-shadow:var(--shadow);padding:22px}.about-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 10%,rgba(142,163,113,.14),transparent 38%);pointer-events:none}.about-panel-head{position:relative;display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:16px}.about-panel-head span{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.14em}.about-panel-head b{color:var(--accent);font-size:11px;letter-spacing:.08em}.about-principles{position:relative;display:grid;gap:14px;margin-top:18px}.about-principles article{border:1px solid var(--line);border-radius:20px;background:color-mix(in srgb,var(--surface) 72%,transparent);padding:18px}.about-principles strong{display:block;font-family:"Sora","Plus Jakarta Sans",sans-serif;letter-spacing:-.035em}.about-principles p{margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
.payment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:54px}.payment-card{border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 90%,transparent),color-mix(in srgb,var(--surface) 72%,transparent));box-shadow:var(--shadow);padding:24px;min-height:230px;display:flex;flex-direction:column}.payment-number{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 48%,var(--line));color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.09em;margin-bottom:auto}.payment-card h3{margin:26px 0 9px;font-family:"Sora","Plus Jakarta Sans",sans-serif;font-size:1.45rem;line-height:1.05;letter-spacing:-.05em}.payment-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.payment-card strong{color:var(--text)}.timeline-board{margin-top:18px;border:1px solid var(--line);border-radius:28px;background:color-mix(in srgb,var(--surface) 80%,transparent);box-shadow:var(--shadow);padding:23px}.timeline-title{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:16px}.timeline-title span{font-family:"Sora","Plus Jakarta Sans",sans-serif;font-size:1.15rem;font-weight:800;letter-spacing:-.04em}.timeline-title b{color:var(--muted);font-size:11px}.timeline-row{display:grid;grid-template-columns:100px minmax(0,1fr) 110px;gap:14px;align-items:center;padding:12px 0}.timeline-row span,.timeline-row strong{font-size:12px;font-weight:900}.timeline-row i{height:9px;border-radius:999px;background:color-mix(in srgb,var(--surface-strong) 78%,transparent);overflow:hidden}.timeline-row i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--violet),var(--lime));box-shadow:0 0 18px color-mix(in srgb,var(--accent) 35%,transparent)}.timeline-board p{margin:15px 0 0;color:var(--subtle);font-size:12px;line-height:1.6}
.faq-item[open]{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 98%,transparent),color-mix(in srgb,var(--surface) 72%,transparent))}.faq-item[open] summary span{transform:rotate(45deg);color:var(--accent)}
.whatsapp-cta{padding-top:80px;padding-bottom:80px}.whatsapp-card{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line));border-radius:34px;background:radial-gradient(620px 360px at 12% 20%,rgba(142,163,113,.18),transparent 60%),linear-gradient(135deg,#172012,#090A08);box-shadow:0 28px 90px rgba(0,0,0,.34);padding:clamp(26px,5vw,46px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;color:#FFF8EA}.whatsapp-card::after{content:"";position:absolute;right:-90px;top:-110px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 0 36px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.018)}.whatsapp-copy{position:relative;z-index:1}.whatsapp-copy span{display:block;color:#BEE3A1;font-size:10px;font-weight:900;letter-spacing:.16em;margin-bottom:10px}.whatsapp-copy h2{max-width:760px;margin:0;font-family:"Sora","Plus Jakarta Sans",sans-serif;font-size:clamp(1.75rem,4vw,3.45rem);line-height:1;letter-spacing:-.065em}.whatsapp-copy p{max-width:650px;margin:16px 0 0;color:rgba(255,248,234,.73);font-size:14px;line-height:1.7}.whatsapp-actions{position:relative;z-index:1;display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.whatsapp-card .button-ghost{color:#FFF8EA;border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.05)}
html[data-theme="light"] .portfolio-section::before,html[data-theme="light"] .payment-section::before{background:radial-gradient(620px 420px at 12% 12%,rgba(169,113,55,.10),transparent 66%),radial-gradient(560px 380px at 88% 70%,rgba(110,129,87,.08),transparent 68%)}html[data-theme="light"] .portfolio-card,html[data-theme="light"] .payment-card,html[data-theme="light"] .timeline-board,html[data-theme="light"] .about-panel{background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(240,231,217,.62));box-shadow:0 20px 52px rgba(74,52,29,.11)}html[data-theme="light"] .about-section{background:linear-gradient(150deg,#F4ECDE,var(--bg));}html[data-theme="light"] .about-principles article{background:rgba(255,255,255,.48)}html[data-theme="light"] .whatsapp-card{background:radial-gradient(620px 360px at 12% 20%,rgba(110,129,87,.17),transparent 60%),linear-gradient(135deg,#28351f,#151C12);box-shadow:0 24px 70px rgba(74,52,29,.18)}
@media(max-width:960px){.portfolio-head,.payment-head,.about-grid{grid-template-columns:1fr;gap:26px}.portfolio-grid{grid-template-columns:1fr}.portfolio-card,.portfolio-card-large{grid-row:auto;min-height:unset}.portfolio-card-large{grid-template-rows:280px 1fr}.payment-grid{grid-template-columns:1fr}.whatsapp-card{grid-template-columns:1fr}.whatsapp-actions{justify-content:flex-start}.desktop-nav{gap:13px}.desktop-nav a{font-size:11px}.portfolio-section,.payment-section{padding-top:100px;padding-bottom:100px}}
@media(max-width:620px){.portfolio-section,.payment-section{padding-top:74px;padding-bottom:74px}.portfolio-grid{margin-top:36px}.portfolio-card{border-radius:24px;grid-template-rows:190px 1fr}.portfolio-card-large{grid-template-rows:235px 1fr}.case-window{left:18px;right:18px;bottom:20px;padding:20px}.mini-phone{width:126px;height:160px;right:18px;bottom:18px}.portfolio-copy{padding:20px}.about-actions .button,.whatsapp-actions .button{width:100%}.about-panel{border-radius:24px}.payment-grid{margin-top:36px}.timeline-title{display:grid}.timeline-row{grid-template-columns:78px minmax(0,1fr);gap:11px}.timeline-row strong{grid-column:2;text-align:left}.whatsapp-cta{padding-top:54px;padding-bottom:54px}.whatsapp-card{border-radius:24px;padding:22px}.whatsapp-copy h2{font-size:clamp(1.7rem,9vw,2.55rem)}}

/* V1 final fixes — prototype cards mobile positioning. */
.prototype-library .work-note{display:none!important}
@media (max-width: 760px){
  .proto-card{
    min-height: 340px;
    justify-content:flex-end;
    align-items:flex-end;
    text-align:right;
    padding:22px;
  }
  .proto-card > div{
    margin-left:auto;
    max-width:min(78%, 265px);
    display:grid;
    justify-items:end;
  }
  .proto-card h3{font-size:clamp(2rem,10vw,3rem);}
  .proto-card p{max-width:100%;}
  .proto-card strong{margin-top:18px;}
  .proto-card::after{
    background:linear-gradient(135deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.42) 45%,rgba(0,0,0,.88) 100%),radial-gradient(circle at 78% 82%,rgba(225,182,106,.18),transparent 42%);
  }
}

/* Portfolio proof refinements: image-first cards, cleaner captions, filled Velora space */
.portfolio-grid-preview .portfolio-card{
  grid-template-rows:auto 1fr;
  min-height:0;
}
.portfolio-grid-preview .portfolio-card-large{
  grid-template-rows:auto 1fr;
  min-height:0;
}
.portfolio-screenshot-wrap{
  position:relative;
  display:block;
  overflow:hidden;
  min-height:230px;
  border-bottom:1px solid var(--line);
  background:#08090b;
}
.portfolio-screenshot-wrap.large{
  min-height:360px;
}
.portfolio-screenshot{
  display:block;
  width:100%;
  height:100%;
  min-height:inherit;
  object-fit:cover;
  object-position:center top;
  filter:saturate(.92) contrast(.96) brightness(.74);
  transform:scale(1.01);
  transition:transform .55s var(--ease), filter .55s var(--ease);
}
.portfolio-screenshot-wrap::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(0,0,0,.12),transparent 50%,rgba(0,0,0,.24)),
    radial-gradient(420px 190px at 20% 15%,rgba(224,169,91,.14),transparent 64%);
}
.portfolio-card:hover .portfolio-screenshot{
  transform:scale(1.035);
  filter:saturate(1.02) contrast(1) brightness(.82);
}
.portfolio-grid-preview .case-chip{
  left:18px;
  top:18px;
  background:rgba(20,18,14,.48);
  border-color:rgba(255,255,255,.18);
  color:#FFF2D6;
  box-shadow:0 10px 30px rgba(0,0,0,.18);
}
.feature-fill{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:20px 0 0;
}
.feature-fill div{
  border:1px solid var(--line);
  border-radius:18px;
  background:color-mix(in srgb,var(--surface-strong) 74%,transparent);
  padding:14px;
}
.feature-fill strong{
  display:block;
  color:var(--text);
  font-family:"Sora","Plus Jakarta Sans",sans-serif;
  font-size:13px;
  letter-spacing:-.025em;
}
.feature-fill span{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:12px;
  line-height:1.55;
}
.portfolio-grid-preview .portfolio-copy a{
  margin-top:22px;
}
html[data-theme="light"] .portfolio-screenshot{
  filter:saturate(.95) contrast(.98) brightness(.9);
}
html[data-theme="light"] .portfolio-card:hover .portfolio-screenshot{
  filter:saturate(1.02) contrast(1) brightness(.96);
}
html[data-theme="light"] .feature-fill div{
  background:rgba(255,255,255,.46);
}
@media(max-width:960px){
  .portfolio-screenshot-wrap.large{min-height:300px}
  .portfolio-screenshot-wrap{min-height:220px}
}
@media(max-width:620px){
  .portfolio-screenshot-wrap.large{min-height:230px}
  .portfolio-screenshot-wrap{min-height:190px}
  .feature-fill{grid-template-columns:1fr}
}


/* V1 portfolio proof: filled Velora blank space with real text/UI blocks */
.velora-proof-fill{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:20px;
}
.velora-proof-box{
  border:1px solid var(--line);
  border-radius:22px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 78%,transparent),color-mix(in srgb,var(--surface) 68%,transparent));
  padding:18px;
  min-height:150px;
}
.velora-proof-box span,
.velora-best-fit span{
  display:block;
  margin-bottom:12px;
  color:var(--accent);
  font-size:10px;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.velora-proof-box strong{
  display:block;
  color:var(--text);
  font-family:"Sora","Plus Jakarta Sans",sans-serif;
  font-size:clamp(.96rem,1.45vw,1.16rem);
  line-height:1.14;
  letter-spacing:-.045em;
}
.velora-proof-box p{
  margin:10px 0 0;
  color:var(--muted);
  font-size:13px;
  line-height:1.65;
}
.velora-best-fit{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  border:1px solid var(--line);
  border-radius:22px;
  background:color-mix(in srgb,var(--surface-strong) 70%,transparent);
  padding:15px 18px;
}
.velora-best-fit span{
  margin:0 12px 0 0;
}
.velora-best-fit b{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  border:1px solid color-mix(in srgb,var(--accent) 44%,var(--line));
  border-radius:999px;
  padding:8px 14px;
  color:var(--text);
  font-size:12px;
  font-weight:850;
  background:color-mix(in srgb,var(--surface) 62%,transparent);
}
html[data-theme="light"] .velora-proof-box,
html[data-theme="light"] .velora-best-fit{
  background:rgba(255,255,255,.48);
}
@media(max-width:760px){
  .velora-proof-fill{grid-template-columns:1fr;gap:10px;margin-top:16px}
  .velora-proof-box{min-height:unset;padding:16px;border-radius:18px}
  .velora-best-fit{border-radius:18px;padding:14px}
  .velora-best-fit span{width:100%;margin:0 0 2px}
}


/* loader removed for faster first impression */
.site-loader{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.founder-note{margin:24px 0 0;padding:18px 18px 18px 20px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:16px;background:linear-gradient(135deg,var(--surface),transparent);box-shadow:0 12px 34px rgba(0,0,0,.12)}
.founder-note span{display:block;margin-bottom:8px;font-size:10px;font-weight:900;letter-spacing:1.4px;color:var(--accent);text-transform:uppercase}
.founder-note p{margin:0!important;color:var(--muted);font-size:14px;line-height:1.7}
.promise-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px;margin-bottom:54px;position:relative;z-index:2;isolation:isolate}
.promise-card{position:relative;overflow:hidden;padding:22px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 92%,#000 8%),var(--surface));box-shadow:0 18px 45px rgba(0,0,0,.14)}
.promise-card span{display:inline-grid;place-items:center;width:32px;height:32px;margin-bottom:18px;border-radius:999px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-size:11px;font-weight:900}
.promise-card strong{display:block;font-size:1.1rem;letter-spacing:-.035em;color:var(--text)}
.promise-card p{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
@media (max-width: 800px){.promise-strip{grid-template-columns:1fr;margin-top:26px;margin-bottom:42px}.founder-note{padding:16px}}


/* V1 speed patch — faster first paint, no hero wait, lighter mobile animation */
/* Above-the-fold content must never wait for IntersectionObserver or text-line animation. */
.hero .reveal,
.hero .reveal.is-visible,
.hero-title-animated,
.hero-title-animated .hero-line,
.hero-title-animated em.hero-line,
.hero-title-animated .hero-line > span,
.hero-title-animated em.hero-line > span{
  opacity:1 !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
  transition:none !important;
}
.hero-title-animated .hero-line,
.hero-title-animated em.hero-line{overflow:visible !important;}
.hero .eyebrow,
.hero .hero-copy,
.hero .hero-actions,
.hero .hero-meta{opacity:1 !important; transform:none !important;}

/* Reduce expensive first-screen painting without removing the premium look. */
.hero-grid{background-size:128px 128px !important; opacity:.14 !important; will-change:auto !important;}
.hero-shade,.hero-grid{transition:none !important;}
.hero-object{will-change:transform; animation-duration:12s !important;}
.planet-particle{animation-duration:10s !important;}
.button,.theme-toggle,.whatsapp-float,.menu-toggle{will-change:auto !important;}

/* Let the browser skip rendering lower sections until users reach them. */
main > section:not(.hero){content-visibility:auto; contain-intrinsic-size:900px;}
.portfolio-section{contain-intrinsic-size:1200px;}
.pricing-section{contain-intrinsic-size:1100px;}
.faq-section{contain-intrinsic-size:900px;}

/* Mobile devices were doing too much work on the hero. Keep the brand feel, but simplify motion. */
@media (max-width:760px){
  html{scroll-behavior:auto;}
  .hero{min-height:650px !important; height:auto !important;}
  .hero-object{opacity:.38 !important; animation:none !important; transform:none !important; filter:none !important; right:-62px !important; top:64% !important;}
  .planet-ring,.planet-moon,.planet-particle,.planet-band{animation:none !important;}
  .hero-grid{display:none !important;}
  .hero::after{opacity:.35 !important;}
  .reveal{transition-duration:.28s !important;}
  .service-card,.price-card,.portfolio-card,.work-card{transform:none !important;}
}

@media (prefers-reduced-motion:reduce){
  .hero-object,.planet-ring,.planet-moon,.planet-particle,.brief-float,.blueprint-hero i,.blueprint-cursor,.phone-preview,.build-dot,.launch-status span,.journey-live-dot,.launch-site-body>span,.launch-ping{animation:none !important;}
  .reveal,.button,.service-card,.price-card,.portfolio-card,.work-card{transition:none !important;}
}


/* vNext bug fix: remove hero meta text that was overlapping the scroll cue after speed optimizations. */
.hero-meta{display:none!important;}
.hero-scroll{bottom:clamp(22px,4vh,36px)!important;}
@media (max-width:620px){.hero-scroll{bottom:18px!important;}}

/* vNext — stable How We Work scroll animation */
#process.journey-section{content-visibility:visible!important;contain:none!important;contain-intrinsic-size:auto!important;}
.journey-step{opacity:.62;transform:translateX(0);transition:opacity .32s ease,transform .32s ease,background .32s ease,border-color .32s ease;}
.journey-step.is-current{opacity:1;transform:translateX(8px);}
.journey-frame{will-change:opacity,transform;}
.journey-visual{will-change:transform;}
.journey-visual-shell{transform:translateZ(0);}
@media (max-width:760px){.journey-step,.journey-step.is-current{opacity:1;transform:none}.journey-visual{margin-bottom:10px}.journey-step-list::before{opacity:.45}}
@media (prefers-reduced-motion:reduce){.journey-step,.journey-frame{transition:none!important;transform:none!important}}


/* NA Insights fixes: remove blank stretch space and support the hidden all-blogs page */
.blog-grid{align-items:start;}
.blog-card{align-self:start;}
.blog-card-button{height:auto;min-height:0;}
.blog-card-featured .blog-card-button{min-height:0;}
.blog-card-featured .blog-cover{min-height:210px;}
.blog-card-featured .blog-card-copy{justify-content:flex-start;}
.insights-more .btn{white-space:nowrap;}

.all-insights-page{padding-top:132px;}
.all-insights-hero{padding:70px 0 42px;border-bottom:1px solid var(--line);position:relative;overflow:hidden;}
.all-insights-hero::before{content:"";position:absolute;inset:auto -10% -45% 45%;height:340px;background:radial-gradient(circle,rgba(197,139,74,.18),transparent 62%);pointer-events:none;}
.all-insights-hero .shell{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.55fr);gap:38px;align-items:end;}
.all-insights-hero h1{margin:14px 0 16px;max-width:760px;font-size:clamp(3rem,7vw,7rem);line-height:.92;letter-spacing:-.085em;}
.all-insights-hero p{max-width:660px;margin:0;color:var(--muted);font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.7;}
.all-insights-panel{border:1px solid var(--line);border-radius:26px;padding:22px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:0 20px 50px rgba(0,0,0,.18);}
.all-insights-panel strong{display:block;font-size:1.25rem;letter-spacing:-.04em;margin-bottom:10px;}
.all-insights-panel p{font-size:.9rem;line-height:1.65;margin:0 0 18px;}
.all-insights-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px;}
.insight-list-card{position:relative;min-height:300px;border:1px solid var(--line);border-radius:26px;padding:22px;background:linear-gradient(145deg,#15101f,#0f0c16);overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.24);}
.insight-list-card::before{content:"";position:absolute;inset:-45% -20% auto auto;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(197,139,74,.18),transparent 64%);pointer-events:none;}
.insight-list-card .all-index{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:30px;border:1px solid var(--line);border-radius:999px;color:var(--accent);font-size:11px;font-weight:900;background:rgba(255,255,255,.045);}
.insight-list-card h2{margin:17px 0 10px;font-size:clamp(1.15rem,1.6vw,1.48rem);line-height:1.08;letter-spacing:-.055em;}
.insight-list-card>p:not(.blog-meta){margin:0;color:var(--muted);font-size:.88rem;line-height:1.6;}
.insight-list-card details{margin-top:18px;border-top:1px solid var(--line);padding-top:14px;color:var(--muted);font-size:.88rem;line-height:1.72;}
.insight-list-card summary{list-style:none;cursor:pointer;color:var(--accent);font-weight:900;font-size:.82rem;display:inline-flex;gap:7px;align-items:center;}
.insight-list-card summary::-webkit-details-marker{display:none;}
.insight-list-card summary::after{content:"↗";font-size:1rem;}
.insight-list-card details[open] summary::after{content:"↓";}
.insight-list-card .read-body{margin-top:14px;}
.insight-list-card .read-body p{margin:0 0 12px;}
.insight-list-card .read-body ul{margin:0 0 12px;padding-left:18px;}
.insight-list-card .read-body li{margin:5px 0;}
.all-insights-cta{margin-top:34px;border:1px solid var(--line);border-radius:30px;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,rgba(197,139,74,.13),rgba(255,255,255,.02));}
.all-insights-cta h2{margin:0 0 8px;font-size:clamp(1.5rem,2.8vw,2.7rem);letter-spacing:-.065em;}
.all-insights-cta p{margin:0;color:var(--muted);max-width:650px;line-height:1.65;}
html[data-theme="light"] .insight-list-card{background:linear-gradient(145deg,#FFFDF8,#F0E7D9);border-color:rgba(59,42,25,.12);box-shadow:0 14px 30px rgba(74,52,29,.09);}
html[data-theme="light"] .all-insights-panel,html[data-theme="light"] .all-insights-cta{background:linear-gradient(145deg,rgba(255,255,255,.7),rgba(239,228,211,.65));}
@media (max-width:980px){.all-insights-hero .shell{grid-template-columns:1fr}.all-insights-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.blog-card-featured .blog-cover{min-height:190px;}}
@media (max-width:720px){.all-insights-page{padding-top:104px}.all-insights-hero{padding:46px 0 30px}.all-insights-grid{grid-template-columns:1fr;gap:14px}.all-insights-cta{align-items:flex-start;flex-direction:column}.insight-list-card{min-height:0}.blog-grid{align-items:start}.blog-card-featured .blog-cover{height:170px;min-height:0}.insights-more{align-items:flex-start;flex-direction:column}.insights-more .btn{white-space:normal}}

/* Bottom-center CTA that appears only near the end of the page. */
.end-site-cta{
  position:fixed;
  left:50%;
  bottom:22px;
  z-index:90;
  transform:translate3d(-50%, 22px, 0) scale(.96);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:46px;
  padding:0 20px;
  border:1px solid color-mix(in srgb, var(--accent) 70%, rgba(255,255,255,.12));
  border-radius:999px;
  color:#140f09;
  background:linear-gradient(135deg, var(--accent-soft), var(--accent));
  box-shadow:0 20px 55px rgba(0,0,0,.28), 0 0 0 1px rgba(255,255,255,.08) inset;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
  pointer-events:none;
  opacity:0;
  transition:opacity .28s ease, transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .2s ease;
}
.end-site-cta span{font-size:15px;line-height:1;}
.end-site-cta.is-visible{opacity:1;pointer-events:auto;transform:translate3d(-50%,0,0) scale(1);}
.end-site-cta:hover{box-shadow:0 24px 70px rgba(197,139,74,.28), 0 0 0 1px rgba(255,255,255,.14) inset;}
html[data-theme="light"] .end-site-cta{color:#1d140b;box-shadow:0 18px 44px rgba(99,65,31,.18), 0 0 0 1px rgba(255,255,255,.45) inset;}
@media (max-width:720px){
  .end-site-cta{bottom:88px; width:calc(100% - 34px); max-width:330px; min-height:48px;}
}

.end-site-cta{
  z-index:9999 !important;
  min-height:52px !important;
  padding:0 28px !important;
  border:1px solid rgba(255,255,255,.22) !important;
  color:#15100A !important;
  background:linear-gradient(135deg,#FFE7A8,#C98B3F) !important;
  box-shadow:0 22px 70px rgba(201,139,63,.42),0 0 0 1px rgba(255,255,255,.18) inset !important;
  font-size:14px !important;
  opacity:0;
}
.end-site-cta.is-visible{
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translate3d(-50%,0,0) scale(1) !important;
}
.end-site-cta:hover{
  transform:translate3d(-50%,-3px,0) scale(1.02) !important;
  box-shadow:0 30px 85px rgba(201,139,63,.52),0 0 0 1px rgba(255,255,255,.24) inset !important;
}
@media (max-width:720px){
  .end-site-cta{
    bottom:86px !important;
    width:calc(100% - 34px) !important;
    max-width:340px !important;
    min-height:50px !important;
  }
}


/* vNext: restore original NA Insights card order and fill Card 01 instead of moving cards around. */
@media (min-width:981px){
  .blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-template-areas:none!important;align-items:stretch!important;gap:17px!important;}
  .insight-card-1{grid-area:auto!important;grid-column:span 2!important;align-self:stretch!important;}
  .insight-card-2,.insight-card-3,.insight-card-4,.insight-card-5{grid-area:auto!important;align-self:stretch!important;}
  .insights-more{grid-area:auto!important;grid-column:1 / -1!important;margin-top:6px!important;}
  .blog-card-featured .blog-card-button{height:100%!important;min-height:292px!important;display:grid!important;grid-template-columns:minmax(280px,.92fr) 1.08fr!important;}
  .blog-card-featured .blog-cover{height:100%!important;min-height:292px!important;}
  .blog-card-featured .blog-card-copy{justify-content:center!important;padding:30px 32px!important;}
}
.blog-card-points{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 14px;}
.blog-card-points span{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));border-radius:999px;color:var(--text);background:rgba(255,255,255,.045);font-size:10px;font-weight:850;letter-spacing:.01em;}
.blog-card-checks{display:grid;gap:7px;margin:0 0 2px;padding:0;list-style:none;color:var(--muted);font-size:12px;line-height:1.45;}
.blog-card-checks li{position:relative;padding-left:18px;}
.blog-card-checks li::before{content:'✓';position:absolute;left:0;top:0;color:var(--accent);font-weight:900;}
html[data-theme="light"] .blog-card-points span{background:rgba(255,255,255,.58);border-color:rgba(169,113,55,.22);}
@media (max-width:720px){.blog-card-points{gap:7px;margin:13px 0 12px}.blog-card-points span{min-height:28px;font-size:9.5px}.blog-card-checks{font-size:11.5px}.blog-card-featured .blog-card-copy{padding:20px 19px 18px!important}}

/* vNext: Pricing polish — cleaner motion and fixed Advanced button contrast. */
.pricing-section{
  position:relative;
  overflow:hidden;
}
.pricing-section::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-190px;
  top:110px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(225,182,106,.16), transparent 68%);
  filter:blur(10px);
  pointer-events:none;
  animation:pricingAura 8s ease-in-out infinite alternate;
}
.pricing-grid{
  perspective:1200px;
}
.price-card{
  overflow:hidden;
  isolation:isolate;
  will-change:transform;
  box-shadow:0 1px 0 rgba(255,255,255,.04) inset;
}
.price-card > *{
  position:relative;
  z-index:2;
}
.price-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  z-index:0;
  background:linear-gradient(120deg, transparent 0%, rgba(225,182,106,.13) 20%, transparent 42%);
  transform:translateX(-120%) skewX(-14deg);
  opacity:.75;
  pointer-events:none;
}
.price-card::after{
  content:"";
  position:absolute;
  width:210px;
  height:210px;
  right:-95px;
  bottom:-95px;
  border-radius:50%;
  z-index:0;
  background:radial-gradient(circle, rgba(225,182,106,.20), transparent 70%);
  opacity:.55;
  transform:scale(.88);
  transition:opacity .35s ease, transform .35s ease;
  pointer-events:none;
}
.price-card:hover{
  transform:translateY(-8px) rotateX(1.2deg);
}
.price-card:hover::before{
  animation:priceSheen .82s ease forwards;
}
.price-card:hover::after{
  opacity:.95;
  transform:scale(1.08);
}
.price-card-featured{
  border-color:rgba(225,182,106,.58)!important;
  background:linear-gradient(155deg, rgba(225,182,106,.15), var(--surface) 58%, transparent)!important;
  box-shadow:0 0 0 1px rgba(225,182,106,.08) inset, 0 22px 72px rgba(197,139,74,.10);
}
.price-card-featured::after{
  width:260px;
  height:260px;
  right:-115px;
  bottom:-115px;
  opacity:.72;
  animation:featuredPriceGlow 4.5s ease-in-out infinite alternate;
}
.price-card li{
  transition:transform .24s ease, color .24s ease;
}
.price-card:hover li{
  color:color-mix(in srgb, var(--text) 92%, transparent);
}
.price-card:hover li:nth-child(1){transform:translateX(2px)}
.price-card:hover li:nth-child(2){transform:translateX(4px)}
.price-card:hover li:nth-child(3){transform:translateX(2px)}
.price-card:hover li:nth-child(4){transform:translateX(4px)}
.price-card:hover li:nth-child(5){transform:translateX(2px)}
.price-card:hover li:nth-child(6){transform:translateX(4px)}
.price-card .button-card span{
  transition:transform .22s ease;
}
.price-card .button-card:hover span,
.price-card .button-card:focus-visible span{
  transform:translate(3px,-3px);
}
.price-card-featured .button-card,
.price-card-featured .button-card:visited,
.price-card-featured .button-card:focus,
.price-card-featured .button-card:active{
  color:#1D140A!important;
  background:linear-gradient(112deg,#FFF0CD 0%,#E1B66A 46%,#B77A3D 100%)!important;
  border-color:rgba(225,182,106,.62)!important;
  box-shadow:0 14px 42px rgba(197,139,74,.28)!important;
  text-shadow:none!important;
}
.price-card-featured .button-card:hover{
  color:#1D140A!important;
  background:linear-gradient(112deg,#FFF7E4 0%,#E8C376 48%,#C58B4A 100%)!important;
  box-shadow:0 18px 52px rgba(197,139,74,.36)!important;
}
.insights-more{
  position:relative;
  overflow:hidden;
}
.insights-more::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg, transparent, rgba(225,182,106,.10), transparent);
  transform:translateX(-110%);
  pointer-events:none;
}
.insights-more:hover::before{
  animation:priceSheen 1s ease forwards;
}
.insights-more .btn{
  transition:transform .25s ease, color .25s ease;
}
.insights-more:hover .btn{
  transform:translateX(4px);
  color:var(--accent);
}
@keyframes priceSheen{
  0%{transform:translateX(-120%) skewX(-14deg)}
  100%{transform:translateX(120%) skewX(-14deg)}
}
@keyframes pricingAura{
  0%{transform:translate3d(0,0,0) scale(.95);opacity:.42}
  100%{transform:translate3d(-35px,28px,0) scale(1.08);opacity:.78}
}
@keyframes featuredPriceGlow{
  0%{transform:scale(.88);opacity:.50}
  100%{transform:scale(1.12);opacity:.86}
}
html[data-theme="light"] .pricing-section::before{background:radial-gradient(circle, rgba(197,139,74,.12), transparent 68%)}
html[data-theme="light"] .price-card::after{background:radial-gradient(circle, rgba(197,139,74,.12), transparent 70%)}
@media (prefers-reduced-motion: reduce){
  .pricing-section::before,
  .price-card-featured::after,
  .price-card:hover::before,
  .insights-more:hover::before{animation:none!important;}
  .price-card:hover{transform:none;}
}

/* vNext — prevent floating WhatsApp from covering footer copy */
@media (min-width: 621px){
  .site-footer .footer-legal{padding-right:165px;}
  .site-footer .footer-legal p:last-child{white-space:nowrap;}
}
@media (max-width: 620px){
  .site-footer{padding-bottom:92px;}
  .whatsapp-float{right:12px;bottom:18px;}
  .site-footer .footer-legal{padding-bottom:18px;}
}


/* Fix: service promise cards were pulled upward into the previous section glow, creating a soft gold band across the cards. */
.promise-card::before,
.promise-card::after{content:none!important;display:none!important}
.promise-card{background-image:linear-gradient(145deg,color-mix(in srgb,var(--surface-strong) 92%,#000 8%),var(--surface))!important}
html[data-theme="light"] .promise-card{background-image:linear-gradient(145deg,#ffffff,#f6efe4)!important}

/* Pricing badge cleanup: keep Advanced label clean and stop overlap */
.price-card-featured .featured-chip{
  position:relative !important;
  inset:auto !important;
  right:auto !important;
  top:auto !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:max-content !important;
  max-width:max-content !important;
  margin:0 0 18px 0 !important;
  padding:7px 12px !important;
  border-radius:999px;
  background:rgba(225,182,106,.16) !important;
  border:1px solid rgba(225,182,106,.42);
  color:#F4D89C !important;
  box-shadow:none !important;
  line-height:1;
  white-space:nowrap;
}
.price-card-featured .price-card-top .plan-label{display:none !important;}
.price-card-featured .price-card-top h3{margin-top:4px !important;}
html[data-theme="light"] .price-card-featured .featured-chip{
  background:rgba(197,139,74,.12) !important;
  color:#7B4E1F !important;
  border-color:rgba(197,139,74,.28);
}

/* vNext exact fix: remove the unwanted soft gold band from the service promise cards without increasing spacing */
.payment-section{
  padding-bottom:72px !important;
}
.promise-strip{
  margin-top:0 !important;
  margin-bottom:54px !important;
  padding-top:0 !important;
  position:relative !important;
  z-index:6 !important;
  isolation:isolate !important;
  background:var(--bg) !important;
}
.promise-strip::before,
.promise-strip::after,
.promise-card::before,
.promise-card::after{
  content:none !important;
  display:none !important;
  background:none !important;
  box-shadow:none !important;
  opacity:0 !important;
}
.promise-card{
  background:linear-gradient(145deg,#151719 0%,#101113 100%) !important;
  background-image:linear-gradient(145deg,#151719 0%,#101113 100%) !important;
  box-shadow:0 16px 38px rgba(0,0,0,.16) !important;
  overflow:hidden !important;
}
html[data-theme="light"] .promise-strip{background:var(--bg) !important;}
html[data-theme="light"] .promise-card{
  background:#fffaf2 !important;
  background-image:none !important;
}
@media(max-width:960px){
  .payment-section{padding-bottom:64px !important;}
  .promise-strip{margin-top:0 !important;}
}

/* vNext fix: service add-ons carousel hover overlap repair.
   Cards no longer lift over neighboring cards; spacing/padding gives hover glow room. */
.service-carousel{
  overflow:visible !important;
}
.service-rail{
  gap:22px !important;
  padding:12px 12px 24px !important;
  scroll-padding-inline:12px !important;
}
.service-visual-card{
  transform:none !important;
  z-index:0;
  flex:0 0 min(304px, 78vw) !important;
  max-width:304px;
  will-change:auto !important;
}
.service-visual-card:hover,
.service-visual-card:focus-within{
  transform:none !important;
  z-index:1;
  border-color:color-mix(in srgb,var(--accent) 52%,var(--line)) !important;
  box-shadow:0 18px 38px rgba(0,0,0,.26),0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent) !important;
}
.service-visual-card:hover .service-art{
  filter:saturate(1.04) brightness(1.02);
}
.service-visual-card:hover .service-card-copy h4{
  color:color-mix(in srgb,var(--text) 86%,var(--accent)) !important;
}
@media (min-width: 900px){
  .service-visual-card{
    flex-basis:calc((100% - 44px) / 3) !important;
    max-width:none;
  }
}
@media (max-width:620px){
  .service-rail{
    gap:14px !important;
    padding:8px 8px 18px !important;
    scroll-padding-inline:8px !important;
  }
  .service-visual-card{
    flex-basis:min(268px,82vw) !important;
  }
}

/* Make the four service cards act as clean links to the pricing section */
.service-card {
  display:block;
  color:inherit;
  text-decoration:none;
  cursor:pointer;
}
.service-card:focus-visible {
  outline:2px solid var(--accent);
  outline-offset:4px;
}
.service-card:active {
  transform:translateY(-2px);
}


/* v25 service carousel polish: larger cards + readable details + clean progress dots */
.service-rail{
  gap:24px !important;
  padding:8px 4px 18px !important;
  scroll-padding-inline:10px !important;
}
.service-visual-card{
  flex:0 0 clamp(330px, 32vw, 384px) !important;
  min-height:488px !important;
  border-radius:24px !important;
}
.service-visual-card:hover{
  transform:translateY(-2px) scale(1.005) !important;
}
.service-art{
  height:214px !important;
}
.service-card-copy{
  padding:24px 24px 26px !important;
}
.service-card-copy h4{
  font-size:21px !important;
  line-height:1.08 !important;
  margin:13px 0 10px !important;
}
.service-card-copy p{
  font-size:13px !important;
  line-height:1.65 !important;
}
.service-card-points{
  list-style:none;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px 10px;
  margin:18px 0 0;
  padding:0;
}
.service-card-points li{
  position:relative;
  min-height:34px;
  padding:9px 10px 9px 25px;
  border:1px solid color-mix(in srgb,var(--line) 74%,transparent);
  border-radius:12px;
  background:color-mix(in srgb,var(--surface) 62%,transparent);
  color:color-mix(in srgb,var(--text) 82%,var(--muted));
  font-size:11px;
  line-height:1.25;
  font-weight:750;
}
.service-card-points li::before{
  content:"✓";
  position:absolute;
  left:10px;
  top:9px;
  color:var(--accent);
  font-size:11px;
  font-weight:950;
}
.carousel-progress{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  margin-top:20px !important;
  min-height:16px !important;
}
.carousel-progress button{
  appearance:none !important;
  display:block !important;
  width:8px !important;
  height:8px !important;
  min-width:8px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:color-mix(in srgb,var(--muted) 45%,transparent) !important;
  cursor:pointer !important;
  font-size:0 !important;
  line-height:0 !important;
  transition:width .22s ease, background .22s ease, transform .22s ease, opacity .22s ease !important;
}
.carousel-progress button::after{
  content:none !important;
  display:none !important;
}
.carousel-progress button.is-active{
  width:34px !important;
  min-width:34px !important;
  background:linear-gradient(90deg,var(--accent),var(--accent-2)) !important;
  box-shadow:0 0 18px color-mix(in srgb,var(--accent) 32%,transparent) !important;
}
.carousel-progress button:hover{
  transform:translateY(-1px);
  opacity:.95;
}
@media (max-width: 860px){
  .service-extensions{
    padding:24px 16px !important;
  }
  .service-carousel{
    grid-template-columns:34px minmax(0,1fr) 34px !important;
    gap:8px !important;
  }
  .service-visual-card{
    flex-basis:min(86vw, 360px) !important;
    min-height:505px !important;
  }
  .service-art{
    height:204px !important;
  }
  .service-card-points{
    grid-template-columns:1fr !important;
  }
  .service-card-points li{
    min-height:auto;
  }
}


/* Final pricing-card fix: keep all 3 plan cards aligned and prevent hover motion from leaning/spilling into the background. */
.pricing-grid{
  align-items:stretch !important;
  gap:18px !important;
  overflow:visible !important;
  padding:10px 0 18px !important;
}
.price-card{
  height:100% !important;
  min-height:628px !important;
  transform-origin:center center !important;
  backface-visibility:hidden !important;
  contain:paint !important;
}
.price-card:hover{
  transform:translateY(-6px) scale(1.012) !important;
  z-index:4 !important;
  border-color:color-mix(in srgb,var(--accent) 58%,var(--line)) !important;
  box-shadow:0 26px 78px rgba(0,0,0,.28), 0 0 0 1px rgba(225,182,106,.10) inset !important;
}
.price-card::after{
  right:-70px !important;
  bottom:-70px !important;
  width:170px !important;
  height:170px !important;
  opacity:.38 !important;
}
.price-card:hover::after{
  transform:scale(1.02) !important;
  opacity:.62 !important;
}
.price-card-featured{
  transform:none !important;
}
.price-card-featured:hover{
  transform:translateY(-6px) scale(1.012) !important;
}
.price-card-featured::after{
  right:-82px !important;
  bottom:-82px !important;
  width:190px !important;
  height:190px !important;
}
.price-card .button-card{
  width:100% !important;
  justify-content:center !important;
}
@media (max-width:980px){
  .pricing-grid{
    gap:16px !important;
    padding:6px 0 14px !important;
  }
  .price-card{
    min-height:unset !important;
    contain:none !important;
  }
  .price-card:hover,
  .price-card-featured:hover{
    transform:translateY(-4px) !important;
  }
}


/* v26: final repair — keep service carousel cards aligned and revert pricing card motion */
.service-rail{
  align-items:stretch !important;
}
.service-visual-card{
  display:flex !important;
  flex-direction:column !important;
  align-self:stretch !important;
}
.service-visual-card > .service-art,
.service-visual-card > .art-presence{
  flex:0 0 214px !important;
  height:214px !important;
  min-height:214px !important;
  max-height:214px !important;
}
.service-rail .service-presence > .art-presence{
  flex:0 0 214px !important;
  height:214px !important;
  min-height:214px !important;
  max-height:214px !important;
}
.service-card-copy{
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
}
.service-card-copy p{
  min-height:42px !important;
}
.service-card-points{
  margin-top:auto !important;
  padding-top:18px !important;
}
@media (max-width: 860px){
  .service-visual-card > .service-art,
  .service-visual-card > .art-presence,
  .service-rail .service-presence > .art-presence{
    flex-basis:204px !important;
    height:204px !important;
    min-height:204px !important;
    max-height:204px !important;
  }
}

/* Revert pricing card animation to stable premium hover: no side tilt, no scale drift, no background overlap. */
.price-card,
.price-card-featured{
  transform:none !important;
  transition:border-color .22s ease, box-shadow .22s ease, background .22s ease !important;
}
.price-card:hover,
.price-card-featured:hover,
.price-card:focus-within,
.price-card-featured:focus-within{
  transform:none !important;
  z-index:2 !important;
  border-color:color-mix(in srgb,var(--accent) 56%,var(--line)) !important;
  box-shadow:0 18px 52px rgba(0,0,0,.22), 0 0 0 1px rgba(225,182,106,.08) inset !important;
}
.price-card::before,
.price-card::after{
  pointer-events:none !important;
}
.price-card:hover::after,
.price-card-featured:hover::after{
  transform:none !important;
  opacity:.38 !important;
}
.price-card .button-card{
  transform:none !important;
}
