:root{--bg:#f2efe5;--surf:#fbf8ee;--text:#39372c;--accent:#77854f;--act:#ffffff;--stext:#141414;--muted:#8d8a78;--border:rgba(57,55,44,0.14);--rad:16px;--hf:Optima, Candara, 'Segoe UI', sans-serif;--bf:Candara, Optima, 'Segoe UI', sans-serif;--pad:5.9rem}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--bf);line-height:1.6;overflow-x:hidden}
h1,h2,h3{font-family:var(--hf);font-weight:800;line-height:1.05}
.tlnav{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;justify-content:space-between;
  align-items:center;padding:16px 6vw;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(8px)}
.tlbrand{font-family:var(--hf);font-weight:800;font-size:20px;text-decoration:none;color:var(--text)}
.tlnav nav a{color:var(--muted);text-decoration:none;margin-left:22px;font-size:14px}
.tlnav nav a:hover{color:var(--accent)}
.tlkick{color:var(--accent);letter-spacing:.28em;font-size:12px;text-transform:uppercase;font-weight:700}
.tlhero{min-height:86vh;display:flex;flex-direction:column;justify-content:center;max-width:1000px;margin:0 auto;padding:0 6vw}
.tlhero h1{font-size:clamp(44px,9vw,120px);margin:14px 0 18px}
.tlhero p{color:var(--muted);font-size:clamp(17px,2.2vw,22px);max-width:600px;margin-bottom:26px}
.tlbtn{display:inline-block;align-self:flex-start;background:var(--accent);color:var(--act);text-decoration:none;
  padding:14px 32px;border-radius:99px;font-weight:700;letter-spacing:.04em}
.tlbtn:hover{filter:brightness(1.08)}
.tlabout{max-width:820px;margin:0 auto;padding:var(--pad) 6vw;text-align:center}
.tlabout h2{font-size:clamp(28px,4.5vw,50px);margin-bottom:16px}
.tlabout p{color:var(--muted);font-size:19px}
.tlwrap{position:relative;max-width:1000px;margin:0 auto;padding:var(--pad) 6vw}
.tltitle{text-align:center;font-size:clamp(28px,4.5vw,50px);margin-bottom:40px}
.tlspine{position:absolute;left:50%;top:calc(var(--pad) + 90px);bottom:var(--pad);width:3px;
  transform:translateX(-50%);background:var(--border);border-radius:3px}
.tlfill{position:absolute;top:0;left:0;width:100%;height:0;background:var(--accent);border-radius:3px}
.tlsteps{position:relative;display:flex;flex-direction:column;gap:40px}
.tlrow{position:relative;width:50%;padding:0 42px}
.tlrow.left{align-self:flex-start;text-align:right}
.tlrow.right{align-self:flex-end;text-align:left}
.tldot{position:absolute;top:26px;width:18px;height:18px;border-radius:50%;background:var(--bg);
  border:3px solid var(--border);z-index:2;transition:border-color .4s ease,transform .4s ease,box-shadow .4s ease}
.tlrow.left .tldot{right:-9px}
.tlrow.right .tldot{left:-9px}
.tlrow.lit .tldot{border-color:var(--accent);transform:scale(1.25);box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 22%,transparent)}
.tlcard{background:var(--surf);color:var(--stext);border-radius:var(--rad);padding:24px;
  opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;display:inline-block;text-align:left;width:100%}
.tlrow.lit .tlcard{opacity:1;transform:none}
.tlstep{color:var(--accent);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.tlcard h3{font-size:22px;margin:6px 0 10px}
.tlcard p{color:color-mix(in srgb,var(--stext) 74%,transparent);font-size:15px}
.tlshot{margin-top:14px;overflow:hidden;border-radius:calc(var(--rad)*.7);aspect-ratio:16/9}
.tlshot img{width:100%;height:100%;object-fit:cover;display:block}
.tlcontact{max-width:760px;margin:0 auto;padding:var(--pad) 6vw;text-align:center}
.tlcontact h2{font-size:clamp(28px,4.5vw,50px);margin-bottom:14px}
.tllines{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin:20px 0 24px;color:var(--muted)}
.tlfoot{text-align:center;padding:40px;color:var(--muted);font-size:13px;letter-spacing:.1em;text-transform:uppercase}
body.tlreduce .tlfill{height:100%}
body.tlreduce .tlcard,body.tlreduce .tldot{opacity:1;transform:none;border-color:var(--accent)}
@media(max-width:760px){
  .tlspine{left:9px}
  .tlrow{width:100%;padding:0 0 0 40px;text-align:left!important;align-self:stretch!important}
  .tlrow.left .tldot,.tlrow.right .tldot{left:0;right:auto}
  .tlnav nav a{margin-left:14px;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
  .tlcard,.tldot{opacity:1;transform:none;transition:none}.tlfill{height:100%}}


.xq{box-sizing:border-box;font-family:Candara, Optima, 'Segoe UI', sans-serif;color:#39372c;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Optima, Candara, 'Segoe UI', sans-serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#77854f;margin-bottom:10px;font-weight:700}

.xq-checklist{list-style:none;padding:0;margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px 26px}
.xq-checklist li{position:relative;padding:10px 0 10px 32px;border-bottom:1px dashed rgba(57,55,44,0.14)}
.xq-checklist li::before{content:"\2713";position:absolute;left:0;top:8px;width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;background:#77854f;color:#ffffff;font-size:.75rem;font-weight:800}


.xq-tl-list{list-style:none;padding:0;margin-top:24px;position:relative;border-left:2px solid rgba(57,55,44,0.14)}
.xq-tl-item{position:relative;padding:0 0 26px 26px}
.xq-tl-item::before{content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:#77854f;box-shadow:0 0 0 4px rgba(57,55,44,0.05)}
.xq-tl-item time{font-family:Optima, Candara, 'Segoe UI', sans-serif;font-weight:800;color:#77854f;display:block;margin-bottom:4px}
.xq-tl-item p{color:#8d8a78;max-width:58ch}


/* =====================================================
   DESIGN DNA: pixel-arcade
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
html::before{content:'';position:fixed;inset:0;z-index:99980;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Crect width='8' height='8' fill='%2339372c'/%3E%3Crect x='8' y='8' width='8' height='8' fill='%2339372c'/%3E%3C/svg%3E");opacity:.05;}
h1,h2,h3{font-family:'Courier New', Courier, monospace !important;text-transform:uppercase !important;letter-spacing:.02em !important;font-weight:800 !important}
img{image-rendering:pixelated;filter:contrast(1.3) saturate(1.4);border-radius:0 !important;border:4px solid #39372c !important;box-shadow:6px 6px 0 rgba(119,133,79,.9) !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;border:4px solid #39372c !important;box-shadow:5px 5px 0 #77854f !important;font-family:'Courier New', Courier, monospace !important;text-transform:uppercase}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:0 !important;border:4px solid #39372c !important;box-shadow:8px 8px 0 rgba(119,133,79,.5) !important}
