:root{--bg:#f2eff0;--surf:#fbfafa;--text:#38363a;--accent:#9a7fa8;--act:#ffffff;--stext:#141414;--muted:#8c898e;--border:rgba(56,54,58,0.14);--rad:22px;--hf:'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;--bf:Garamond, 'EB Garamond', 'Times New Roman', serif;--pad:6.3rem}
*{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:Garamond, 'EB Garamond', 'Times New Roman', serif;color:#38363a;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:'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, 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:#9a7fa8;margin-bottom:10px;font-weight:700}

.xq-promo{padding:34px 24px}
.xq-promo-card{border:2px dashed #9a7fa8;border-radius:20px;padding:26px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;background:rgba(56,54,58,0.05)}
.xq-promo-tag{background:#9a7fa8;color:#ffffff;font-family:'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;font-weight:800;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;padding:8px 14px;border-radius:999px}
.xq-promo-card p{flex:1 1 260px;font-size:1.02rem}
.xq-promo-card a{color:#9a7fa8;font-weight:700;text-decoration:none;white-space:nowrap}
.xq-promo-card a:hover{text-decoration:underline}


.xq-tl-list{list-style:none;padding:0;margin-top:24px;position:relative;border-left:2px solid rgba(56,54,58,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:#9a7fa8;box-shadow:0 0 0 4px rgba(56,54,58,0.05)}
.xq-tl-item time{font-family:'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;font-weight:800;color:#9a7fa8;display:block;margin-bottom:4px}
.xq-tl-item p{color:#8c898e;max-width:58ch}


.xq-strip{padding-left:0;padding-right:0}
.xq-strip .xq-wrap{padding:0 24px}
.xq-striprail{list-style:none;display:flex;gap:12px;overflow-x:auto;padding:14px 24px;scroll-snap-type:x mandatory}
.xq-striprail li{flex:0 0 min(64vw,300px);scroll-snap-align:start}
.xq-striprail img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:20px;display:block}


/* =====================================================
   DESIGN DNA: industrial-steel
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:none;background:none;background:repeating-linear-gradient(45deg,#9a7fa8 0 16px,transparent 16px 32px);background-size:100% 9px;background-repeat:no-repeat;background-position:top}
h1,h2,h3{font-family:Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif !important;text-transform:uppercase !important;letter-spacing:.04em !important}
img{filter:grayscale(.55) contrast(1.22);border-radius:0 !important;border:2px solid #38363a !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:0 !important;border:2px solid #38363a !important;box-shadow:4px 4px 0 rgba(56,54,58,.8) !important;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:0 !important;border-left:5px solid #9a7fa8 !important;box-shadow:none !important}
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='90' height='90'%3E%3Ccircle cx='6' cy='6' r='1.6' fill='%2338363a'/%3E%3C/svg%3E");opacity:.14;}
