@font-face{font-family:"Jakarta";src:url(../fonts/heading-latin.woff2) format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Jakarta";src:url(../fonts/heading-ext.woff2) format("woff2");font-weight:200 800;font-display:swap;unicode-range:U+0100-02BA,U+1E00-1EFF,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"DM Sans";src:url(../fonts/body-latin.woff2) format("woff2");font-weight:100 1000;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"DM Sans";src:url(../fonts/body-ext.woff2) format("woff2");font-weight:100 1000;font-display:swap;unicode-range:U+0100-02BA,U+1E00-1EFF,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --ink:#0F172A;
  --text:#334155;
  --muted:#64748B;
  --line:#FAF1E0;
  --line-strong:#F2DFBA;
  --tint:#FEFBF6;
  --wash:#FBF5E9;
  --white:#FFFFFF;
  --accent:#A16207;
  --accent-bright:#A16207;
  --accent-deep:#854D0E;
  --accent-soft:#F5ECDD;
  --night:#6B3F06;
  --night-2:#854D0E;
  --danger:#B3261E;
  --heading:"Jakarta","Segoe UI",system-ui,-apple-system,sans-serif;
  --body:"DM Sans","Segoe UI",system-ui,-apple-system,sans-serif;
  --gutter:clamp(20px,4vw,32px);
  --shadow:0 1px 2px rgba(15,23,42,.04),0 16px 40px -18px rgba(15,23,42,.16);
  --shadow-btn:0 8px 20px -8px rgba(161,98,7,.65);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--text);font:400 1.0625rem/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p,ul,ol,dl,dd,fieldset{margin:0;padding:0}
ul,ol{list-style:none}
fieldset{border:0;min-width:0}
h1,h2,h3{font-family:var(--heading);color:var(--ink);font-weight:800;letter-spacing:-.03em;line-height:1.14;text-wrap:balance}
h2{font-size:clamp(1.9rem,3.6vw,2.875rem);letter-spacing:-.035em}
svg text{font-family:var(--heading)}
:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px;border-radius:4px}

.wrap{width:min(1264px,100%);margin-inline:auto;padding-inline:var(--gutter)}
.skip{position:absolute;left:-999px;top:8px;background:var(--accent-deep);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:12px}
.badge{display:inline-flex;align-items:center;gap:8px;padding:7px 15px;border-radius:99px;background:var(--accent-soft);border:1px solid #FAF1E0;color:var(--accent-deep);font:700 .75rem/1.3 var(--heading);letter-spacing:.06em;text-transform:uppercase}
.badge-white{background:var(--white);border-color:var(--line);color:var(--text);box-shadow:0 1px 3px rgba(15,23,42,.06)}
.badge-dot::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent-bright)}
.kicker{font:700 .75rem/1.3 var(--heading);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:12px}
.lead{font-size:1.125rem;line-height:1.65;color:var(--muted);max-width:60ch}
.accent{color:var(--accent-deep)}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 26px;border-radius:12px;border:1px solid transparent;font:700 .9688rem/1.2 var(--heading);text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--accent-bright);color:#fff;box-shadow:var(--shadow-btn)}
.btn-primary:hover{background:var(--accent)}
.btn-dark{background:var(--accent-deep);color:#fff}
.btn-dark:hover{background:#683D08}
.btn-quiet{border:2px solid var(--line);color:var(--ink);background:var(--white)}
.btn-quiet:hover{border-color:var(--line-strong)}
.btn-sm{min-height:44px;padding:9px 20px;font-size:.9rem;border-radius:11px}
.btn-full{width:100%}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}

/* Top bar */
.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.topbar-in{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font:800 1.25rem/1 var(--heading);letter-spacing:-.02em;color:var(--ink)}
.mark{width:34px;height:34px;flex:none}
.nav{display:flex;align-items:center;gap:30px;flex:1}
.nav-links{display:flex;align-items:center;gap:30px;margin-inline:auto}
.nav a:not(.btn){text-decoration:none;font-weight:500;font-size:.9688rem;color:var(--ink);transition:color .15s}
.nav a:not(.btn):hover{color:var(--accent-bright)}
.nav .nav-login{color:var(--muted)}
.menu-btn{display:none;width:42px;height:42px;background:none;border:1px solid var(--line);border-radius:10px;cursor:pointer;padding:0;position:relative}
.menu-btn span{position:absolute;left:12px;right:12px;height:2px;border-radius:2px;background:var(--accent-deep);transition:transform .2s,top .2s}
.menu-btn span:first-child{top:15px}
.menu-btn span:last-child{top:24px}
.menu-btn[aria-expanded="true"] span:first-child{top:20px;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] span:last-child{top:20px;transform:rotate(-45deg)}

/* Hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(60% 70% at 50% 8%,#FCF8F0 0%,rgba(252,248,240,0) 70%),radial-gradient(30% 45% at 92% 92%,#ECFBF6 0%,rgba(236,251,246,0) 75%),radial-gradient(30% 45% at 6% 70%,#FDFAF4 0%,rgba(253,250,244,0) 75%),var(--white);border-bottom:1px solid var(--line)}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(#E8D2A6 1px,transparent 1px);background-size:24px 24px;opacity:.5;mask-image:radial-gradient(ellipse 70% 75% at 50% 40%,#000 10%,transparent 78%);-webkit-mask-image:radial-gradient(ellipse 70% 75% at 50% 40%,#000 10%,transparent 78%)}
.hero-in{position:relative;text-align:center;padding-block:clamp(40px,5vw,64px) clamp(44px,5vw,64px)}
.hero h1{font-size:clamp(2.35rem,5vw,3.75rem);line-height:1.1;letter-spacing:-.04em;max-width:18ch;margin:22px auto 20px}
.hero .lead{margin-inline:auto;max-width:58ch}
.hero .actions{justify-content:center}
.hero-note{margin-top:22px;font-size:.9375rem;font-weight:500;color:var(--ink)}
.route{margin-top:clamp(36px,5vw,52px);background:var(--white);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:22px clamp(16px,2.5vw,28px);text-align:left}
.route ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.route li{position:relative;display:flex;align-items:flex-start;gap:10px;min-width:0}
.tick{position:relative;flex:none;width:22px;height:22px;border-radius:50%;background:var(--accent-bright);margin-top:1px}
.tick::after{content:"";position:absolute;left:8px;top:4.5px;width:6px;height:10px;border:solid #fff;border-width:0 1.75px 1.75px 0;transform:rotate(42deg)}
.route strong{display:block;font:700 .9rem/1.3 var(--heading);color:var(--ink);letter-spacing:-.01em}
.route small{display:block;margin-top:2px;font-size:.8125rem;color:var(--muted);line-height:1.35}

/* Numbers */
.numbers{background:var(--tint);border-bottom:1px solid var(--line)}
.numbers ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-block:34px;text-align:center}
.numbers strong{display:block;font:800 clamp(1.6rem,3vw,2.125rem)/1.15 var(--heading);letter-spacing:-.03em;color:var(--ink)}
.numbers li:nth-child(2) strong{color:var(--accent-bright)}
.numbers span{font-size:.9375rem;color:var(--muted)}

/* Sections */
.section{padding-block:clamp(64px,8vw,104px)}
.section-tight{padding-block:clamp(48px,6vw,80px)}
.section-tint{background:var(--tint);border-block:1px solid var(--line)}
.head{max-width:720px;margin:0 auto clamp(36px,4vw,52px);text-align:center}
.head h2{margin-top:16px}
.head>p:not(.badge){margin:14px auto 0;color:var(--muted);font-size:1.125rem;max-width:58ch}
.head-left{margin-inline:0;text-align:left}

/* Service cards */
.tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px}
.tile{grid-column:span 2;display:flex;flex-direction:column;background:linear-gradient(150deg,#FDFAF4 0%,#FEFDFC 62%);border:1px solid var(--line);border-radius:20px;overflow:hidden;text-decoration:none;transition:border-color .15s,box-shadow .2s,transform .2s}
.tile-wide{grid-column:span 3}
.tile:hover{border-color:#F3E3C3;box-shadow:var(--shadow);transform:translateY(-3px)}
.tile-body{padding:28px 28px 20px}
.tile-group{display:block;font:700 .75rem/1.3 var(--heading);letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin-bottom:12px}
.tile h3{font-size:1.375rem;font-weight:700;letter-spacing:-.022em;margin-bottom:8px}
.tile p{font-size:.9688rem;line-height:1.55;color:var(--muted)}
.tile-art{margin-top:auto;height:216px;overflow:hidden}
.tile-wide .tile-art{height:292px}
.tile-art svg{width:100%;height:100%}
.tiles-3 .tile{grid-column:span 2}

/* Two ways in */
.paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.path{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 1px 3px rgba(15,23,42,.04)}
.path .badge{text-transform:none;letter-spacing:0;font-size:.8125rem}
.path h3{font-size:1.5rem;letter-spacing:-.025em;margin:20px 0 10px}
.path p{color:var(--muted);margin-bottom:22px}
.chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:28px}
.chips li{display:flex;align-items:center;gap:10px;font-size:.875rem;font-weight:500;color:var(--text)}
.chips span{padding:9px 13px;background:var(--tint);border:1px solid var(--line);border-radius:9px}
.chips li:not(:last-child)::after{content:"\2192";color:var(--line-strong)}
.path .btn{margin-top:auto}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;counter-reset:step}
.steps li{counter-increment:step;background:var(--white);border:1px solid var(--line);border-radius:18px;padding:26px}
.steps li::before{content:counter(step);display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--accent-soft);color:var(--accent-deep);font:800 1rem/1 var(--heading);margin-bottom:18px}
.steps h3{font-size:1.125rem;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}
.steps p{font-size:.9688rem;color:var(--muted)}

/* Developer banner */
.dev{background:linear-gradient(115deg,var(--night) 25%,var(--night-2) 100%);border-radius:28px;color:#fff;padding:clamp(28px,5vw,60px);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.7fr);gap:clamp(28px,5vw,64px);align-items:center;box-shadow:0 30px 60px -30px rgba(107,63,6,.6)}
.dev .badge{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#FAF1E1}
.dev h2{color:#fff;margin:18px 0 6px}
.dev-role{color:#F0DCB3;font-weight:500;margin-bottom:18px}
.dev-text p{color:#F3E2C0;max-width:62ch;margin-bottom:14px}
.skills{margin-top:24px;display:grid;gap:14px}
.skills div{display:grid;grid-template-columns:104px minmax(0,1fr);gap:12px;align-items:baseline}
.skills dt{font:700 .75rem/1.3 var(--heading);letter-spacing:.05em;text-transform:uppercase;color:#EFD8A9}
.skills dd{display:flex;flex-wrap:wrap;gap:7px}
.skills span{padding:5px 11px;border-radius:8px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:#fff;font-size:.875rem}
.portrait{position:relative;justify-self:center;width:min(340px,100%);margin:0}
.portrait img{width:100%;height:auto;border-radius:22px;box-shadow:0 0 0 8px rgba(255,255,255,.06),0 24px 48px -20px rgba(0,0,0,.7)}
.portrait figcaption{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:9px 16px;border-radius:11px;background:#fff;color:var(--ink);font:700 .8125rem/1.2 var(--heading);box-shadow:var(--shadow)}

/* Questions */
.faq-list{max-width:900px;margin-inline:auto;display:grid;gap:14px}
details{background:var(--white);border:1px solid var(--line);border-radius:14px;transition:border-color .15s}
details[open]{border-color:var(--line-strong)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;font:700 1.0313rem/1.35 var(--heading);letter-spacing:-.015em;color:var(--ink)}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:none;width:15px;height:15px;background:linear-gradient(var(--muted),var(--muted)) center/100% 1.5px no-repeat,linear-gradient(var(--muted),var(--muted)) center/1.5px 100% no-repeat;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 56px 20px 24px;color:var(--muted);font-size:1rem}

/* Request */
.section-start{background:var(--wash);border-top:1px solid #FAF1E0}
.start{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,80px);align-items:start}
.start-copy h2{margin-top:16px}
.start-copy>p:not(.badge){margin-top:14px;color:var(--muted);font-size:1.125rem;max-width:42ch}
.direct{display:grid;gap:10px;margin-top:26px;justify-items:start}
.direct a{font-weight:600;color:var(--accent-deep);text-underline-offset:3px}
.request{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:clamp(20px,3vw,36px);display:grid;gap:18px;box-shadow:var(--shadow)}
.types legend,.field label{display:block;font-size:.9375rem;font-weight:600;color:var(--ink);margin-bottom:7px;padding:0}
.field label span{font-weight:400;color:var(--muted)}
.segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;background:var(--tint);border:1px solid var(--line);border-radius:12px;padding:4px}
.segments label{cursor:pointer}
.segments input{position:absolute;opacity:0;width:1px;height:1px}
.segments span{display:grid;place-items:center;text-align:center;min-height:42px;padding:4px 6px;line-height:1.2;border-radius:9px;font-size:.9rem;font-weight:600;color:var(--muted);transition:background-color .15s,color .15s}
.segments input:checked+span{background:var(--accent-bright);color:#fff}
.segments input:focus-visible+span{outline:2px solid var(--accent-bright);outline-offset:2px}
.field input,.field select,.field textarea{width:100%;min-height:50px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:11px;background:var(--white);color:var(--ink);font:400 1rem/1.4 var(--body)}
.field textarea{resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent-bright);outline-offset:0;border-color:var(--accent-bright)}
.field.bad input,.field.bad select,.field.bad textarea{border-color:var(--danger)}
.err{color:var(--danger);font-size:.875rem;margin-top:5px}
.privacy{font-size:.875rem;color:var(--muted);line-height:1.5}

/* Service page */
.svc-hero{background:radial-gradient(55% 80% at 80% 20%,#FCF8F0 0%,rgba(252,248,240,0) 72%),var(--white);border-bottom:1px solid var(--line)}
.svc-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,6vw,80px);align-items:center;padding-block:clamp(44px,6vw,80px)}
.crumb{display:flex;flex-wrap:wrap;gap:8px;font-size:.9375rem;color:var(--muted);margin-bottom:18px}
.crumb a{color:var(--accent-deep);font-weight:500;text-decoration:none}
.crumb a:hover{text-decoration:underline}
.svc-hero h1{font-size:clamp(2.2rem,4.4vw,3.5rem);letter-spacing:-.04em;margin-bottom:18px}
.svc-art{background:linear-gradient(150deg,#FDFAF4 0%,#FEFDFC 62%);border:1px solid var(--line);border-radius:20px;overflow:hidden;aspect-ratio:400/260}
.svc-art svg{width:100%;height:100%}
.svc-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.svc-lists>div{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:clamp(22px,3vw,36px)}
.svc-lists h2{font-size:1.375rem;font-weight:700;letter-spacing:-.025em;margin-bottom:14px}
.rows li{position:relative;padding:12px 0;border-top:1px solid var(--line);font-size:1rem;color:var(--ink)}
.rows-tick li{padding-left:30px}
.rows-tick li::before{content:"";position:absolute;left:5px;top:17px;width:7px;height:12px;border:solid var(--accent-bright);border-width:0 2px 2px 0;transform:rotate(42deg)}
.note{margin-top:12px;padding-top:14px;border-top:1px solid var(--line);font-size:.9375rem;color:var(--muted)}
.missing{padding-block:120px;min-height:50vh}
.missing h1{font-size:clamp(1.9rem,4vw,2.75rem);margin-bottom:24px}

/* Customer accounts */
.auth{background:radial-gradient(55% 60% at 50% 0%,#FCF8F0 0%,rgba(252,248,240,0) 72%),var(--tint);padding:clamp(32px,6vw,72px) var(--gutter)}
.auth-card{width:min(460px,100%);margin-inline:auto;background:var(--white);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:clamp(22px,4vw,38px)}
.auth h1{font-size:1.875rem;letter-spacing:-.035em;margin-bottom:6px}
.auth-sub{color:var(--muted);font-size:1rem;margin-bottom:22px}
.auth form{display:grid;gap:16px}
.auth .btn{margin-top:4px}
.auth-alt{margin-top:14px;text-align:center;font-size:.9375rem;color:var(--muted)}
.auth-alt a{color:var(--accent-deep);font-weight:600;text-underline-offset:3px}
.hint{color:var(--muted);font-size:.875rem;margin-top:5px}
.notice{background:#FBEDEC;color:#8C1D18;border-radius:10px;padding:11px 13px;font-size:.9375rem;margin-bottom:18px}
.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.facts div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.facts dt{font-size:.9375rem;color:var(--muted)}
.facts dd{font-size:.9688rem;color:var(--ink);overflow-wrap:anywhere}

/* Signed-in customer shell */
.app{display:grid;grid-template-columns:256px minmax(0,1fr);min-height:100vh;min-height:100dvh;background:var(--white)}
.icon{width:20px;height:20px;flex:none}
.side{position:sticky;top:0;align-self:start;height:100vh;height:100dvh;overflow-y:auto;padding:22px 16px 24px;background:var(--white)}
.side-brand{padding:4px 12px 22px}
.side-list{display:grid;gap:4px}
.side-list a,.side-list button{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:9px 12px;border:0;border-radius:10px;background:none;color:var(--text);font:500 .9688rem/1.2 var(--body);text-align:left;text-decoration:none;cursor:pointer;transition:background-color .15s,color .15s}
.side-list a:hover,.side-list button:hover{background:var(--tint);color:var(--ink)}
.side-list a.active{background:var(--accent-soft);color:var(--accent-deep);font-weight:600}
.app-main{display:flex;flex-direction:column;min-width:0;padding-right:12px}
.app-top{display:flex;align-items:center;justify-content:flex-end;min-height:72px;padding-inline:12px}
.app-top-brand{display:none}
.app-top-right{display:flex;align-items:center;gap:12px}
.avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent-deep);font:700 .875rem/1 var(--heading);text-decoration:none}
.avatar-lg{width:64px;height:64px;font-size:1.25rem;flex:none}
.panel{flex:1;background:var(--tint);border:1px solid var(--line);border-radius:22px;margin-bottom:12px;padding:clamp(16px,3vw,28px)}
.panel-in{width:min(1040px,100%);margin-inline:auto;display:grid;gap:22px}
.panel-title{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:15px 20px;color:var(--muted)}
.panel-title h1{font-size:1.25rem;font-weight:700;letter-spacing:-.022em}

/* Dashboard */
.dash-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}
.welcome{display:flex;flex-direction:column;align-items:flex-start;background:linear-gradient(135deg,var(--accent) 0%,#AE6C09 100%);color:#fff;border-radius:18px;padding:clamp(20px,3vw,28px);box-shadow:0 18px 36px -20px rgba(161,98,7,.75)}
.welcome-hi{font-weight:600;color:#FAF1E1}
.welcome-name{font:800 clamp(1.5rem,2.6vw,2rem)/1.2 var(--heading);letter-spacing:-.03em;margin:14px 0 16px;overflow-wrap:anywhere}
.welcome-facts{display:grid;gap:3px;font-size:.9688rem;margin-bottom:20px}
.welcome-facts div{display:flex;flex-wrap:wrap;gap:6px}
.welcome-facts dt{color:#FAF1E0}
.welcome-facts dd{overflow-wrap:anywhere;min-width:0}
.welcome-btn{display:inline-flex;align-items:center;gap:8px;margin-top:auto;min-height:40px;padding:8px 14px;border-radius:10px;background:#fff;color:var(--ink);font:600 .875rem/1.2 var(--body);text-decoration:none}
.welcome-btn:hover{background:var(--accent-soft)}
.welcome-btn .icon{width:16px;height:16px}
.dash-side{display:grid;gap:22px}
.status{display:flex;align-items:center;justify-content:space-between;gap:16px;border-radius:18px;padding:22px 24px;text-decoration:none;color:var(--ink);transition:transform .15s}
.status:hover{transform:translateY(-2px)}
.status-rose{background:#FDE7EC}
.status-mint{background:#DDF7F1}
.status strong{display:block;font:700 1.0625rem/1.3 var(--heading);letter-spacing:-.018em}
.status span{display:block;margin-top:5px;font-size:.9375rem;color:var(--text);text-decoration:underline;text-underline-offset:3px}
.status i{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:13px;background:#fff}
.status-rose i{color:#E11D48}
.status-mint i{color:#0D9488}
.quick{background:var(--white);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.quick h2{background:var(--accent);color:#fff;font-size:1.0313rem;font-weight:700;letter-spacing:-.015em;text-align:center;padding:15px 20px}
.quick ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.quick li{border-bottom:1px solid var(--line)}
.quick li:nth-child(odd){border-right:1px solid var(--line)}
.quick li:nth-last-child(-n+2){border-bottom:0}
.quick a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:88px;padding:14px 10px;text-align:center;text-decoration:none;color:var(--text);font-size:.9688rem;transition:background-color .15s}
.quick a:hover{background:var(--tint);color:var(--ink)}
.quick .icon{color:var(--accent-bright)}

/* Orders, tickets and services inside the dashboard */
.notice-ok{background:#E3F6EC;color:#0F5E3A;margin-bottom:0}
.panel-in>.notice{margin-bottom:0}
.req-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:start}
.box{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:clamp(18px,2.5vw,26px);min-width:0}
.box h2{font-size:1.125rem;font-weight:700;letter-spacing:-.02em;margin-bottom:16px}
.box-form{display:grid;gap:16px}
.req-empty{color:var(--muted);font-size:.9688rem;padding:18px 0;border-top:1px solid var(--line)}
.req-list li{border-top:1px solid var(--line)}
.req-list details{background:none;border:0;border-radius:0}
.req-list summary{padding:13px 0;font:inherit;letter-spacing:0;gap:12px}
.req-list summary::after{display:none}
.req-main{min-width:0}
.req-main strong{display:block;font:700 .9688rem/1.35 var(--heading);letter-spacing:-.012em;color:var(--ink);overflow-wrap:anywhere}
.req-main small{display:block;margin-top:2px;font-size:.8125rem;font-weight:400;color:var(--muted)}
.req-status{flex:none;padding:4px 10px;border-radius:99px;font:600 .75rem/1.3 var(--body)}
.req-pending{background:#FEF3D6;color:#7A5500}
.req-in_progress{background:var(--accent-soft);color:var(--accent-deep)}
.req-completed{background:#E3F6EC;color:#0F5E3A}
.req-list details p{padding:0 0 14px;font-size:.9375rem;color:var(--text);white-space:pre-line;overflow-wrap:anywhere}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.btn .icon{width:17px;height:17px;margin-right:7px}
.back-link a{color:var(--accent-deep);font-weight:600;text-decoration:none;font-size:.9375rem}
.back-link a:hover{text-decoration:underline}
.box-flush{padding:0;overflow:hidden}
.box-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:16px clamp(16px,2.5vw,24px);background:#FEFDFB;border-bottom:1px solid var(--line)}
.box .box-head h2{margin:0;font-size:1.1875rem;display:flex;align-items:center;gap:10px}
.count{padding:2px 10px;border-radius:99px;background:var(--accent-soft);color:var(--accent-deep);font:700 .8125rem/1.5 var(--heading);letter-spacing:0}
.req-empty-big{padding:clamp(32px,6vw,56px) 20px;text-align:center;color:var(--muted)}
.order-list{display:grid;gap:12px;padding:clamp(12px,2vw,18px)}
.order-card{border:1px solid var(--line);border-radius:14px;padding:16px 18px;background:var(--white);min-width:0}
.order-pills{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:10px}
.order-price{padding:4px 10px;border-radius:99px;background:var(--accent-soft);color:var(--accent-deep);font:600 .75rem/1.3 var(--body)}
.order-card h3{font-size:1.0313rem;font-weight:700;letter-spacing:-.015em;margin-bottom:5px;overflow-wrap:anywhere}
.order-card p{font-size:.9375rem;color:var(--text);white-space:pre-line;overflow-wrap:anywhere;margin-bottom:6px}
.order-card small{font-size:.8125rem;color:var(--muted)}
.order-card .order-category{color:var(--muted);font-size:.875rem;margin-bottom:4px}
.order-card .order-agent{color:var(--muted);font-size:.9rem;margin:4px 0 2px}
.order-open{display:block;width:fit-content;margin-top:8px;color:var(--accent-deep);font-weight:600;font-size:.9375rem;text-decoration:none}
.order-open:hover{text-decoration:underline}
.req-priority{background:#FCF6EB;color:#995F08}
.btn-soft{background:#FDE7EC;color:#BE123C}
.btn-soft:hover{background:#FBD5DE}
.modal{width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:0;border-radius:16px;background:var(--white);color:var(--text);overflow:auto;box-shadow:0 30px 70px -20px rgba(107,63,6,.55)}
.modal::backdrop{background:rgba(15,23,42,.5)}
.modal:not([open]){display:none}
.modal-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 22px;background:var(--accent);color:#fff}
.modal-head h2{color:#fff;font-size:1.3125rem;font-weight:700;letter-spacing:-.022em}
.modal-x{position:relative;flex:none;width:32px;height:32px;border-radius:8px;color:#fff}
.modal-x:hover{background:rgba(255,255,255,.14)}
.modal-x::before,.modal-x::after{content:"";position:absolute;left:8px;right:8px;top:15px;height:2px;border-radius:2px;background:currentColor;transform:rotate(45deg)}
.modal-x::after{transform:rotate(-45deg)}
.modal-body{padding:20px 22px 22px}
.modal-note{padding:11px 13px;border-radius:10px;background:var(--accent-soft);color:var(--accent-deep);font-size:.9375rem;font-weight:500;line-height:1.45}
.modal-body .notice{margin:0}
.modal-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-top:2px}
.thread-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px}
.thread-top>div{flex:1 1 280px;min-width:0}
.box .thread-title{font-size:1.25rem;margin-bottom:4px;overflow-wrap:anywhere}
.thread-meta{font-size:.875rem;color:var(--muted)}
.thread{display:flex;flex-direction:column;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.bubble{align-self:flex-start;width:fit-content;max-width:min(82%,620px);padding:11px 14px;border-radius:14px 14px 14px 4px;background:var(--tint);border:1px solid var(--line);min-width:0}
.bubble-mine{align-self:flex-end;border-radius:14px 14px 4px 14px;background:var(--accent-soft);border-color:#FAF1E0}
.bubble div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 14px;margin-bottom:4px}
.bubble strong{font:700 .875rem/1.35 var(--heading);color:var(--ink);overflow-wrap:anywhere}
.bubble time{font-size:.75rem;color:var(--muted)}
.bubble p{font-size:.9688rem;color:var(--text);white-space:pre-line;overflow-wrap:anywhere}
.thread-form{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);justify-items:start}
.thread-form .field{width:100%}
.thread-closed{margin-top:18px;padding:12px 14px;border-radius:10px;background:var(--tint);color:var(--muted);font-size:.9375rem}
.box>.admin-who{font-size:.9375rem;margin-top:14px}
.admin-card{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px}
.admin-card>div{flex:1 1 320px;min-width:0}
.admin-who{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);white-space:normal!important}
.admin-who a{color:var(--accent-deep)}
.admin-status{display:flex;align-items:flex-start;gap:8px;flex:none}
.admin-status select{min-height:44px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:10px;background:var(--white);color:var(--ink);font:400 .9375rem/1.3 var(--body)}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:20px}
.cat-card{position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden;min-width:0}
.cat-image{aspect-ratio:368/250;background:linear-gradient(135deg,#F5ECDD,#FEFBF7);display:grid;place-items:center;overflow:hidden}
.cat-image img{width:100%;height:100%;object-fit:cover}
.cat-letter{font:800 3.5rem/1 var(--heading);color:var(--accent);opacity:.5}
.cat-badge{position:absolute;left:18px;top:0;margin-top:calc((100% * 250 / 368) - 20px);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(15,23,42,.15)}
.cat-badge .mark{width:26px;height:26px}
.cat-body{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:32px 20px 20px;flex:1}
.cat-price{padding:4px 9px;border-radius:7px;background:var(--tint);border:1px solid var(--line);color:var(--ink);font:700 .9688rem/1.3 var(--heading)}
.cat-body h2{font-size:1.1875rem;font-weight:700;letter-spacing:-.02em;overflow-wrap:anywhere}
.cat-body p{font-size:.9375rem;line-height:1.45;color:var(--muted);overflow-wrap:anywhere}
.cat-body .btn{margin-top:auto}
.item-view{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,3vw,30px);background:var(--white);border:1px solid var(--line);border-radius:18px;padding:clamp(16px,2.5vw,26px);align-items:start}
.item-view .cat-image{border-radius:12px}
.item-body{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}
.item-body h2{font-size:1.5rem;font-weight:800;letter-spacing:-.028em;overflow-wrap:anywhere}
.item-text{color:var(--text);white-space:pre-line;overflow-wrap:anywhere}
.item-body .box-form{width:100%;margin-top:8px}
.cat-admin li{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:12px clamp(14px,2.5vw,22px);border-bottom:1px solid var(--line)}
.cat-admin li:last-child{border-bottom:0}
.cat-admin .is-hidden .cat-thumb,.cat-admin .is-hidden .cat-admin-text{opacity:.5}
.cat-thumb{flex:none;width:72px;aspect-ratio:368/250;border-radius:8px;overflow:hidden;background:var(--accent-soft);display:grid;place-items:center}
.cat-thumb img{width:100%;height:100%;object-fit:cover}
.cat-thumb .cat-letter{font-size:1.25rem}
.cat-thumb-lg{width:180px;margin-bottom:8px}
.cat-admin-text{flex:1 1 160px;min-width:0}
.cat-admin-text strong{display:block;font:700 .9688rem/1.35 var(--heading);color:var(--ink);overflow-wrap:anywhere}
.cat-admin-text span{font-size:.875rem;color:var(--muted)}
.cat-admin-actions{display:flex;gap:8px}
.field input[type=file]{min-height:0;padding:9px}
.auth-full{min-height:100vh;min-height:100dvh;display:grid;align-items:center}

/* Platform features */
.side-badge{margin-left:auto;min-width:22px;padding:2px 7px;border-radius:99px;background:#E11D48;color:#fff;font:700 .75rem/1.3 var(--body);text-align:center}
.notice-wait{background:#FEF3D6;color:#6B4A00;margin-bottom:0}
.notice-wait a{color:inherit;font-weight:700}
.req-down{background:#FBE3E1;color:#9B1C14}
.req-cancelled{background:#EDF0F4;color:#566274}
.stack-col{display:grid;gap:22px;min-width:0;align-content:start}
.req-even{grid-template-columns:repeat(2,minmax(0,1fr))}
.welcome-sm{padding:20px 24px}
.welcome-sm .welcome-name{margin:8px 0 0}
.welcome-balance{margin:-4px 0 14px;font:800 1.5rem/1.2 var(--heading);letter-spacing:-.02em}
.welcome-balance span{display:block;margin-bottom:3px;font:500 .875rem/1.3 var(--body);letter-spacing:0;color:#FAF1E0}
.facts-tight div{padding:9px 0;grid-template-columns:96px minmax(0,1fr)}
.spaced{margin:12px 0}
.spaced-top{margin-top:18px}
.box h2.spaced-top{margin-top:26px;margin-bottom:0}
.box-form h2{margin-bottom:0}
.form-title{font-size:1.0625rem;font-weight:700;letter-spacing:-.015em}
.rows-plain li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;padding:12px 0;border-top:1px solid var(--line)}
.rows-plain li>span:first-child{flex:1 1 180px;min-width:0}
.rows-plain strong{display:block;font:700 .9375rem/1.35 var(--heading);letter-spacing:-.01em;color:var(--ink);overflow-wrap:anywhere}
.rows-plain strong a{color:inherit;text-decoration:none}
.rows-plain strong a:hover{color:var(--accent-bright)}
.rows-plain small{display:block;margin-top:2px;font-size:.8125rem;color:var(--muted);overflow-wrap:anywhere}
.tx-amount{text-align:right;font:700 .9688rem/1.3 var(--heading)}
.tx-amount small{font:400 .75rem/1.3 var(--body)}
.tx-credit{color:#0F7A4A}
.tx-debit{color:var(--ink)}
.link-list li{border-top:1px solid var(--line)}
.link-list li:first-child{border-top:0}
.link-list a,.link-item{position:relative;display:grid;gap:2px;padding:14px clamp(16px,2.5vw,24px);text-decoration:none}
.link-list a:hover{background:var(--tint)}
.link-list strong{font:700 .9688rem/1.35 var(--heading);letter-spacing:-.012em;color:var(--ink);overflow-wrap:anywhere}
.link-list span:not(.req-status){font-size:.9375rem;color:var(--muted);overflow-wrap:anywhere}
.link-list small{font-size:.8125rem;color:var(--muted)}
.link-list .req-status{justify-self:start;margin-top:5px}
.link-list .is-new{background:#FDFAF5;box-shadow:inset 3px 0 0 var(--accent-bright)}
.search-bar{display:flex;gap:10px}
.search-bar input{flex:1;min-width:0;min-height:44px;padding:9px 13px;border:1px solid var(--line-strong);border-radius:10px;background:var(--white);font:400 1rem/1.3 var(--body);color:var(--ink)}
.tabs{display:flex;flex-wrap:wrap;gap:6px}
.tabs a{padding:7px 14px;border-radius:99px;background:var(--white);border:1px solid var(--line);font-size:.9rem;font-weight:500;text-decoration:none;color:var(--text)}
.tabs a.active{background:var(--accent-bright);border-color:var(--accent-bright);color:#fff}
.button-row{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}
.platform-card{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px}
.platform-card>div:first-child{flex:1 1 280px;min-width:0}
.order-card h3 a,.order-agent a,.order-category a{color:inherit}
.uptime{display:flex;gap:2px;margin:10px 0 4px;max-width:360px}
.uptime i{flex:1;max-width:10px;height:22px;border-radius:2px}
.uptime .up{background:#22A569}
.uptime .down{background:#D9362B}
.update-form{margin-top:10px}
.stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:18px;counter-reset:stage}
.stage{counter-increment:stage;position:relative;text-align:center;font-size:.8125rem;color:var(--muted);min-width:0}
.stage i{display:grid;place-items:center;width:30px;height:30px;margin:0 auto 6px;border-radius:50%;background:var(--white);border:2px solid var(--line-strong);font:700 .8125rem/1 var(--heading);font-style:normal}
.stage i::before{content:counter(stage)}
.stage:not(:last-child)::after{content:"";position:absolute;top:14px;left:calc(50% + 19px);right:calc(-50% + 16px);height:2px;background:var(--line)}
.stage.is-done{color:var(--text)}
.stage.is-done i{background:var(--accent-bright);border-color:var(--accent-bright);color:#fff}
.stage.is-done::after{background:var(--accent-bright)}
.stage.is-now{color:var(--accent-deep);font-weight:700}
.stage.is-now i{border-color:var(--accent-bright);color:var(--accent-deep);background:var(--accent-soft)}
.thread-invoice{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:10px 13px;border:1px solid var(--line);border-radius:10px;font-weight:600;font-size:.9375rem;text-decoration:none;color:var(--ink)}
.thread-invoice:hover{border-color:var(--line-strong)}
.admin-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.admin-tools .admin-status{flex-wrap:wrap}
.admin-invoice input{min-height:44px;width:150px;max-width:100%;padding:8px 11px;border:1px solid var(--line-strong);border-radius:10px;font:400 .9375rem/1.3 var(--body);color:var(--ink);background:var(--white)}
.admin-invoice input[name=description]{width:230px}
.bubble-wide{width:100%;max-width:none;border-radius:12px}
.bubble.is-hidden{opacity:.55}
.bubble form{margin-top:8px}
.invoice-sheet{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:clamp(20px,4vw,40px)}
.invoice-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-bottom:20px;border-bottom:2px solid var(--ink)}
.invoice-title{text-align:right}
.invoice-title h2{font-size:1.75rem;letter-spacing:-.03em}
.invoice-title p{margin:2px 0 6px;font-size:.9375rem;color:var(--muted)}
.invoice-parties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:22px 0}
.invoice-parties dt{font:700 .75rem/1.3 var(--heading);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.invoice-parties dd{margin-bottom:10px;overflow-wrap:anywhere}
.invoice-line,.invoice-total{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--line)}
.invoice-line span{overflow-wrap:anywhere;min-width:0}
.invoice-total{border-top:2px solid var(--ink);font-size:1.25rem;font-weight:700;color:var(--ink)}
.invoice-actions{display:flex;justify-content:flex-end}
.pay-form{max-width:320px}
.prose{max-width:none}
.prose h2{font-size:1.5rem;margin-bottom:12px}
.prose-body{white-space:pre-line;overflow-wrap:anywhere;max-width:72ch;color:var(--text)}
.prose p{margin-bottom:12px}
code{font:500 .875em/1.4 ui-monospace,Consolas,monospace;background:var(--tint);padding:1px 5px;border-radius:5px;overflow-wrap:anywhere}
pre{margin:0 0 16px;padding:14px 16px;border-radius:10px;background:var(--night);color:#FAF1E0;overflow-x:auto}
pre code{background:none;padding:0;color:inherit;overflow-wrap:normal;white-space:pre}
.table-wrap{overflow-x:auto;margin-bottom:16px}
.data{width:100%;min-width:420px;border-collapse:collapse;font-size:.9375rem}
.data th{padding:9px 10px;text-align:left;border-bottom:2px solid var(--line);font-size:.8125rem;color:var(--muted)}
.data td{padding:10px;border-bottom:1px solid var(--line);vertical-align:top}
.training-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:20px}
.training{background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden;min-width:0}
.video{aspect-ratio:16/9;background:var(--night)}
.video iframe{width:100%;height:100%;border:0}
.training-body{padding:18px 20px}
.training-body h2{font-size:1.1875rem;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}
.training-body p:not(.kicker){color:var(--muted);font-size:.9375rem;white-space:pre-line;overflow-wrap:anywhere}
.copy-row{display:flex;gap:8px}
.copy-row input{flex:1;min-width:0;min-height:44px;padding:9px 12px;border:1px solid var(--line-strong);border-radius:10px;background:var(--tint);color:var(--ink);font:500 .875rem/1.3 ui-monospace,Consolas,monospace}
.key-reveal{border-color:#D9B64A;background:#FFFBEF}
.check{display:flex;align-items:flex-start;gap:11px;cursor:pointer}
.check input{flex:none;width:19px;height:19px;margin:3px 0 0;accent-color:var(--accent-bright)}
.check span{font-size:.9375rem;color:var(--muted)}
.check strong{display:block;font-weight:600;color:var(--ink)}
.tile-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:14px}
.stat{display:grid;gap:3px;padding:16px 18px;background:var(--white);border:1px solid var(--line);border-radius:14px;text-decoration:none}
.stat:hover{border-color:var(--line-strong)}
.stat i{color:var(--accent-bright);margin-bottom:6px}
.stat strong{font:800 1.625rem/1.1 var(--heading);letter-spacing:-.03em;color:var(--ink)}
.stat span{font-size:.875rem;color:var(--muted)}
.plain-details{background:none;border:0;border-radius:0;margin-top:8px}
.plain-details summary{padding:4px 0;font:600 .9375rem/1.3 var(--body);letter-spacing:0;color:var(--accent-deep);justify-content:flex-start;gap:8px}
.plain-details form+form{margin-top:10px}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.form-grid .btn{justify-self:start;grid-column:1/-1}
.review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:18px}
.review{margin:0;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:16px}
.review blockquote{margin:10px 0 12px;color:var(--text)}
.review figcaption{font-weight:600;font-size:.9375rem;color:var(--ink)}
.stars{color:#A16207;letter-spacing:1px;font-size:1.0625rem;line-height:1}
.stars i{font-style:normal;color:var(--line-strong)}
@media (max-width:940px){
  .req-even,.invoice-parties{grid-template-columns:minmax(0,1fr)}
  .invoice-title{text-align:left}
}
@media (max-width:560px){
  .form-grid{grid-template-columns:minmax(0,1fr)}
  .stage{font-size:.6875rem}
  .stage i{width:24px;height:24px}
  .stage:not(:last-child)::after{top:11px;left:calc(50% + 15px);right:calc(-50% + 12px)}
  .search-bar .btn{padding-inline:14px}
}
@media print{
  .side,.app-top,.panel-title,.no-print,.skip{display:none!important}
  .app{display:block}
  .app-main{padding:0}
  .panel{border:0;background:#fff;padding:0;margin:0}
  .invoice-sheet{border:0;padding:0}
}

/* Manual wallet funding */
.fund-steps{display:grid;gap:18px;counter-reset:fund}
.fund-steps>li{counter-increment:fund;position:relative;padding-left:40px;min-width:0}
.fund-steps>li::before{content:counter(fund);position:absolute;left:0;top:-2px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent-deep);font:800 .875rem/1 var(--heading)}
.fund-steps h3{font-size:1rem;font-weight:700;letter-spacing:-.015em;margin-bottom:8px}
.fund-steps>li>p{font-size:.9375rem;color:var(--muted)}
.bank-card{padding:13px 15px;border:1px solid #FAF1E0;border-radius:12px;background:#FEFCF8}
.bank-number{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}
.bank-number span{font:800 1.3125rem/1.2 var(--heading);letter-spacing:.01em;color:var(--ink);overflow-wrap:anywhere}
.bank-card p{margin-top:5px;font-size:.9375rem;color:var(--text);overflow-wrap:anywhere}
.funding-actions{display:grid;gap:8px;flex:0 1 300px;min-width:min(100%,250px)}
.funding-actions .btn{width:100%}
.funding-reject{display:flex;gap:6px}
.funding-reject input{flex:1;min-width:0;min-height:44px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:10px;background:var(--white);color:var(--ink);font:400 .9375rem/1.3 var(--body)}
.funding-reject .btn{width:auto;flex:none}
.funding-warning{padding:12px clamp(16px,2.5vw,24px) 0}

/* Profile */
.profile{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:clamp(20px,3vw,32px)}
.profile-head{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.profile-head h2{font-size:1.375rem;font-weight:700;letter-spacing:-.025em;overflow-wrap:anywhere}
.profile-head p{color:var(--muted);overflow-wrap:anywhere}
.profile-note{margin-top:8px;padding-top:16px;border-top:1px solid var(--line);font-size:.9375rem;color:var(--muted)}
.profile-note a{color:var(--accent-deep);font-weight:600;text-underline-offset:3px}

/* Footer */
.footer{border-top:1px solid var(--line);padding-top:60px;font-size:.9688rem;color:var(--muted)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px}
.footer-brand p{margin-top:14px;max-width:32ch}
.footer h2{font:700 .75rem/1.3 var(--heading);letter-spacing:.07em;text-transform:uppercase;color:var(--ink);margin-bottom:14px}
.footer ul{display:grid;gap:10px}
.footer ul a{text-decoration:none}
.footer ul a:hover{color:var(--accent-bright)}
.footer-end{margin-top:46px;padding-block:22px;border-top:1px solid var(--line);font-size:.875rem;text-align:right}

@media (max-width:1100px){
  .route ol{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:18px}
  .tile,.tile-wide,.tiles-3 .tile{grid-column:span 3}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:1fr 1fr 1fr}
  .footer-brand{grid-column:1/-1}
}
@media (max-width:940px){
  .menu-btn{display:block}
  .nav{position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--white);border-bottom:1px solid var(--line);padding:4px var(--gutter) 20px;display:none}
  .nav.open{display:flex}
  .nav-links{flex-direction:column;align-items:stretch;gap:0;margin:0}
  .nav a:not(.btn){padding:13px 0;border-bottom:1px solid var(--line);font-size:1rem}
  .nav .btn{margin-top:14px;min-height:48px}
  .svc-grid,.start,.svc-lists,.dash-top,.paths,.dev,.req-layout,.item-view{grid-template-columns:minmax(0,1fr)}
  .app{display:block}
  .side{display:none;position:fixed;top:64px;left:0;right:0;bottom:0;height:auto;z-index:40;max-height:calc(100dvh - 64px);overflow-y:auto;padding:12px 16px 24px;border-block:1px solid var(--line);box-shadow:0 18px 30px -18px rgba(15,23,42,.3)}
  .side.open{display:block}
  .side-brand{display:none}
  .app-main{padding:0 12px;min-height:100vh;min-height:100dvh}
  .app-top{position:sticky;top:0;z-index:41;justify-content:space-between;min-height:64px;margin-inline:-12px;padding-inline:16px;background:var(--white)}
  .app-top-brand{display:inline-flex}
  .portrait{grid-row:1;width:min(280px,100%);margin-bottom:14px}
}
@media (max-width:640px){
  .tile,.tile-wide,.tiles-3 .tile{grid-column:1/-1}
  .tiles{gap:16px}
  .tile-body{padding:22px 22px 16px}
  .tile-art,.tile-wide .tile-art{height:210px}
  .route ol{grid-template-columns:minmax(0,1fr)}
  .steps{grid-template-columns:minmax(0,1fr)}
  .actions .btn{flex:1 1 100%}
  .footer-grid{grid-template-columns:1fr}
  .footer-end{text-align:left}
  .numbers span{font-size:.8125rem;line-height:1.3;display:block}
  .skills div{grid-template-columns:minmax(0,1fr);gap:7px}
  .segments span{font-size:.8125rem}
  summary{padding:17px 18px}
  details p{padding:0 18px 18px}
  .dev{border-radius:20px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important}
  .btn:hover,.tile:hover{transform:none}
}
