/* TTD Thailand V2.4.2 — unified site system */
:root{
  --ttd-red:#e51b2b;
  --ttd-red-bright:#ff2b3d;
  --ttd-black:#080a0d;
  --ttd-ink:#15171c;
  --ttd-muted:#6d7179;
  --ttd-soft:#f5f6f8;
  --ttd-line:#e5e7eb;
  --ttd-radius:16px;
}
.ttd-unified{background:#fff;color:var(--ttd-ink)}
.ttd-unified .container{width:min(1440px,calc(100% - 48px))}

/* Shared navigation — identical across every page */
.ttd-global-header{height:auto;min-height:86px;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:1px solid rgba(17,18,22,.07);position:sticky;top:0;z-index:200}
.ttd-global-header .v23-nav{min-height:86px}
.ttd-global-header .v23-brand img{max-width:222px;max-height:66px;width:auto;height:auto}
.ttd-global-header .v23-menu a{font-family:'Noto Sans Thai','Manrope',sans-serif;font-size:14px;font-weight:700}
.ttd-global-header .v23-menu a.active{color:var(--ttd-red)}
.ttd-global-header .v23-menu a:after{background:var(--ttd-red)}
.ttd-global-header .v23-mini-contact{font-family:'Manrope',sans-serif;font-weight:800}

/* Shared footer */
.ttd-unified-footer{background:#07080a;color:#d6d7da;padding:48px 0 22px}
.ttd-unified-footer .footer-main{display:grid;grid-template-columns:1.55fr 1.2fr 1fr 1fr;gap:44px;padding-bottom:34px}
.ttd-unified-footer .footer-brand img{width:190px;height:auto;filter:none;margin-bottom:14px}
.ttd-unified-footer .footer-brand p,.ttd-unified-footer .footer-col p{font-size:12px;line-height:1.75;color:#8f9299;margin:10px 0 0}
.ttd-unified-footer .footer-col>span{font:800 11px/1 'Noto Sans Thai','Manrope',sans-serif;color:#f0f1f3}
.ttd-unified-footer .footer-bottom{font-size:10px;letter-spacing:0;color:#6d7077}

/* Product landing hero */
.ttd-catalog-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 32%,rgba(229,27,43,.24),transparent 31%),linear-gradient(105deg,#07090c 0%,#0d1014 56%,#1b0d11 100%);color:#fff;padding:0;min-height:640px}
.ttd-catalog-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:64px 64px;pointer-events:none}
.ttd-catalog-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,transparent,var(--ttd-red),transparent)}
.ttd-catalog-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(430px,.82fr) minmax(560px,1.18fr);align-items:center;min-height:640px;gap:28px}
.ttd-catalog-copy{padding:76px 0}
.ttd-catalog-copy h1{margin:0 0 24px;font:900 clamp(58px,5.4vw,88px)/.93 'Noto Sans Thai','Manrope',sans-serif;letter-spacing:-.035em;max-width:680px;color:#fff}
.ttd-catalog-copy h1 strong{color:var(--ttd-red-bright);font-weight:900}
.ttd-catalog-copy>p{max-width:650px;margin:0;color:#c7c9ce;font-size:17px;line-height:1.75}
.ttd-catalog-copy .catalog-jump{display:flex;flex-wrap:wrap;gap:9px;margin-top:32px}
.ttd-catalog-copy .catalog-jump a{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;font-size:13px;font-weight:700;background:rgba(255,255,255,.025);transition:.25s ease}
.ttd-catalog-copy .catalog-jump a:hover{background:var(--ttd-red);border-color:var(--ttd-red);transform:translateY(-2px)}
.ttd-catalog-visual{position:relative;height:550px;min-width:0;align-self:end;isolation:isolate}
.ttd-catalog-orbit{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.14);width:410px;aspect-ratio:1;right:11%;top:7%;z-index:0}
.ttd-catalog-orbit-b{width:310px;right:17%;top:16%;border-style:dashed;border-color:rgba(229,27,43,.38)}
.ttd-catalog-bus,.ttd-catalog-pickup{position:absolute;display:block;object-fit:contain;filter:drop-shadow(0 26px 28px rgba(0,0,0,.48));z-index:2}
.ttd-catalog-bus{width:92%;max-width:none;right:-16%;bottom:-8%}
.ttd-catalog-pickup{width:47%;left:2%;bottom:-1%;z-index:4}
.ttd-catalog-line{position:absolute;width:85%;height:2px;right:-12%;bottom:25%;background:linear-gradient(90deg,transparent,var(--ttd-red-bright),transparent);transform:rotate(-9deg);box-shadow:0 0 15px rgba(255,43,61,.52);z-index:1}

/* Catalog section hierarchy */
.ttd-unified .catalog-toolbar-wrap{top:86px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--ttd-line);box-shadow:0 10px 30px rgba(10,12,16,.04)}
.ttd-unified .catalog-toolbar{min-height:68px}
.ttd-unified .catalog-filters button{font-family:'Noto Sans Thai','Manrope',sans-serif}
.ttd-unified .catalog-section{padding:86px 0 96px;background:#fff;border-bottom:1px solid #eceef1}
.ttd-unified .catalog-section:nth-of-type(odd){background:#f7f8fa}
.ttd-unified .catalog-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:30px}
.ttd-unified .catalog-head span{display:block;color:var(--ttd-red);font-size:12px;font-weight:800;margin-bottom:6px}
.ttd-unified .catalog-head h2{margin:0;font-size:clamp(38px,4vw,56px);line-height:1.06;letter-spacing:-.03em;color:#16181d}
.ttd-unified .catalog-head>p{font-size:13px;color:#8a8d95;margin:0 0 7px}
.ttd-unified .model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ttd-unified .model-card{min-height:0;background:#fff;border:1px solid #e4e6ea;border-radius:16px;padding:0;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr);grid-template-rows:auto auto 1fr auto;position:relative;box-shadow:none;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .3s}
.ttd-unified .model-card:hover{transform:translateY(-5px);box-shadow:0 22px 52px rgba(13,15,18,.1);border-color:#d6d8dd}
.ttd-unified .model-card:before{display:none}
.ttd-unified .model-card-top{grid-column:2;padding:25px 25px 0;display:flex;justify-content:space-between;align-items:center;gap:10px}
.ttd-unified .model-card-top span{font-size:11px;color:#8a8d95;font-weight:700}
.ttd-unified .model-card-top em{font-style:normal;color:var(--ttd-red);font:800 12px/1 Manrope,sans-serif}
.ttd-unified .model-card-image{grid-column:1;grid-row:1/6;min-height:320px;background:radial-gradient(circle at 50% 72%,#fff 0,#f4f5f7 52%,#eceef1 100%);display:grid;place-items:center;overflow:hidden}
.ttd-unified .model-card-image:after{left:22%;right:22%;bottom:12%;height:10%}
.ttd-unified .model-card-image img{width:100%;height:100%;max-height:320px;object-fit:contain!important;padding:20px;filter:drop-shadow(0 14px 18px rgba(0,0,0,.16))}
.ttd-unified .model-card h3{grid-column:2;margin:18px 25px 6px;font:800 30px/1.05 'Manrope','Noto Sans Thai',sans-serif;color:#17191e;letter-spacing:-.025em}
.ttd-unified .model-card>p{grid-column:2;margin:0 25px 18px;color:#6d7179;font-size:13px;line-height:1.65}
.ttd-unified .model-mini-stats{grid-column:2;margin:0 25px 20px;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #eceef1;border-bottom:1px solid #eceef1}
.ttd-unified .model-mini-stats span{padding:12px 0;font-size:10px;color:#94979e}
.ttd-unified .model-mini-stats span+span{padding-left:14px;border-left:1px solid #eceef1}
.ttd-unified .model-mini-stats b{display:block;margin-top:3px;color:#1b1d22;font:800 14px/1.2 'Manrope','Noto Sans Thai',sans-serif}
.ttd-unified .model-card>a{grid-column:2;margin:0 25px 24px;color:var(--ttd-red);font-size:12px;font-weight:800;display:flex;justify-content:space-between;align-items:center}
.ttd-unified .quick-preview-btn{right:auto;left:14px;bottom:14px}

/* Model detail pages brought into the same visual world */
.ttd-unified .detail-hero{background:radial-gradient(circle at 78% 28%,rgba(229,27,43,.19),transparent 30%),linear-gradient(108deg,#07090c,#11141a 58%,#1b0d11);color:#fff}
.ttd-unified .detail-hero-layout{min-height:610px;gap:72px;padding:68px 0}
.ttd-unified .crumb{color:#a8abb2;font-family:'Noto Sans Thai','Manrope',sans-serif;letter-spacing:0;font-size:12px;font-weight:700;margin-bottom:20px}
.ttd-unified .detail-copy .eyebrow{margin-bottom:16px;letter-spacing:0;font-size:12px;color:#c4c6cb}
.ttd-unified .detail-copy h1{font-family:'Manrope','Noto Sans Thai',sans-serif;font-size:clamp(50px,5.2vw,80px);letter-spacing:-.035em}
.ttd-unified .detail-copy>p{font-size:15px;line-height:1.8}
.ttd-unified .detail-image-panel{border-radius:16px;min-height:440px;background:radial-gradient(circle at 52% 63%,rgba(255,255,255,.13),transparent 38%),linear-gradient(145deg,#13161b,#07090c)!important;box-shadow:none;border:1px solid rgba(255,255,255,.09)}
.ttd-unified .detail-image-panel img.model-cutout{padding:24px;filter:drop-shadow(0 24px 24px rgba(0,0,0,.48))}
.ttd-unified .model-stats{border-bottom:1px solid var(--ttd-line)}
.ttd-unified .stat-grid>div{padding:24px 22px}
.ttd-unified .detail-section{padding:88px 0}
.ttd-unified .detail-section h2{font-size:40px;letter-spacing:-.025em}
.ttd-unified .eyebrow.dark{letter-spacing:0;font-size:12px;color:#858991}
.ttd-unified .datasheet-cta{border-radius:14px;background:#0b0d10}
.ttd-unified .datasheet-cta small{font-family:'Noto Sans Thai','Manrope',sans-serif;letter-spacing:0}
.ttd-unified .related-section{padding:72px 0;background:#f7f8fa}
.ttd-unified .related-card{border-radius:14px}

/* Charger page */
.ttd-unified .charger-hero{background:radial-gradient(circle at 79% 30%,rgba(229,27,43,.22),transparent 31%),linear-gradient(105deg,#07090c,#11141a 58%,#1b0d11)}
.ttd-unified .charger-hero-layout{min-height:620px;gap:70px}
.ttd-unified .charger-hero h1{font-family:'Noto Sans Thai','Manrope',sans-serif;font-size:clamp(54px,5.4vw,82px);letter-spacing:-.035em}
.ttd-unified .charger-hero h1 strong{color:var(--ttd-red-bright)}
.ttd-unified .charger-hero p{font-size:15px;line-height:1.8}
.ttd-unified .charger-hero-media{border-radius:16px;background:radial-gradient(circle at 50% 55%,rgba(255,255,255,.1),transparent 42%),#101217;box-shadow:none;border:1px solid rgba(255,255,255,.08)}
.ttd-unified .charger-grid{gap:20px}
.ttd-unified .charger-type-card{border-radius:16px;border-color:#e4e6ea;padding:20px;min-height:420px;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s,border-color .3s}
.ttd-unified .charger-type-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(13,15,18,.08);border-color:#d6d8dc}
.ttd-unified .charger-type-card>span{font-family:'Noto Sans Thai','Manrope',sans-serif;letter-spacing:0;font-size:11px}
.ttd-unified .charger-type-card h3{font-size:24px;line-height:1.2}
.ttd-unified .charger-plan{border-radius:16px}

/* Make all legacy uppercase micro-labels read as part of the same Thai-first system */
.ttd-unified .eyebrow{font-family:'Noto Sans Thai','Manrope',sans-serif;letter-spacing:0;text-transform:none}

@media(max-width:1100px){
  .ttd-catalog-hero-grid{grid-template-columns:.9fr 1.1fr;min-height:590px}
  .ttd-catalog-visual{height:500px}
  .ttd-unified .model-card{grid-template-columns:1fr;grid-template-rows:auto}
  .ttd-unified .model-card-image{grid-column:1;grid-row:auto;min-height:270px}
  .ttd-unified .model-card-top,.ttd-unified .model-card h3,.ttd-unified .model-card>p,.ttd-unified .model-mini-stats,.ttd-unified .model-card>a{grid-column:1}
  .ttd-unified .model-card-top{padding-top:20px}
}

@media(max-width:900px){
  .ttd-global-header{min-height:76px}
  .ttd-global-header .v23-nav{min-height:76px;grid-template-columns:1fr auto auto}
  .ttd-global-header .v23-brand img{max-width:180px;max-height:58px}
  .ttd-global-header .menu-toggle{display:flex;flex-direction:column;justify-content:center;position:relative;z-index:205}
  .ttd-global-header .v23-menu{position:absolute;top:76px;left:16px;right:16px;display:none;flex-direction:column;align-items:stretch;gap:0;background:#fff;border:1px solid #e6e7ea;padding:10px 18px 18px;border-radius:0 0 16px 16px;box-shadow:0 20px 45px rgba(0,0,0,.12);transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .ttd-global-header .v23-menu.open{display:flex}
  .ttd-global-header .v23-menu a{padding:14px 3px;border-bottom:1px solid #eceef1;font-size:17px}
  .ttd-global-header .v23-menu a:last-child{border-bottom:0}
  .ttd-global-header .v23-menu a:after{display:none}
  .ttd-global-header .v23-nav-actions .nav-quote{display:none}
  .ttd-catalog-hero-grid{grid-template-columns:1fr;min-height:0;padding-top:0}
  .ttd-catalog-copy{padding:70px 0 14px}
  .ttd-catalog-copy h1{font-size:clamp(52px,10vw,76px);max-width:680px}
  .ttd-catalog-visual{height:430px}
  .ttd-catalog-bus{width:80%;right:-5%;bottom:-7%}
  .ttd-catalog-pickup{width:42%;left:2%;bottom:1%}
  .ttd-catalog-orbit{right:12%;top:4%}
  .ttd-unified .catalog-toolbar-wrap{top:76px}
  .ttd-unified .model-grid{grid-template-columns:1fr 1fr}
  .ttd-unified-footer .footer-main{grid-template-columns:1fr 1fr}
  .ttd-unified-footer .footer-brand{grid-column:1/-1}
}

@media(max-width:700px){
  .ttd-unified .container{width:min(100% - 32px,1440px)}
  .ttd-catalog-hero{min-height:0}
  .ttd-catalog-copy{padding:56px 0 10px}
  .ttd-catalog-copy h1{font-size:52px;line-height:.98;margin-bottom:20px}
  .ttd-catalog-copy>p{font-size:15px;line-height:1.7}
  .ttd-catalog-copy .catalog-jump{margin-top:24px;gap:7px}
  .ttd-catalog-copy .catalog-jump a{min-height:39px;padding:0 13px;font-size:12px}
  .ttd-catalog-visual{height:330px;margin-top:4px;overflow:hidden}
  .ttd-catalog-bus{width:103%;right:-30%;bottom:-3%}
  .ttd-catalog-pickup{width:56%;left:-8%;bottom:1%}
  .ttd-catalog-orbit{width:280px;right:7%;top:8%}
  .ttd-catalog-orbit-b{width:210px;right:17%;top:18%}
  .ttd-unified .catalog-toolbar-wrap{position:relative;top:auto}
  .ttd-unified .catalog-section{padding:62px 0 68px}
  .ttd-unified .catalog-head{align-items:flex-start;margin-bottom:22px}
  .ttd-unified .catalog-head h2{font-size:38px}
  .ttd-unified .model-grid{grid-template-columns:1fr;gap:14px}
  .ttd-unified .model-card-image{min-height:260px}
  .ttd-unified .model-card-image img{max-height:260px;padding:14px}
  .ttd-unified .model-card h3{font-size:28px}
  .ttd-unified .detail-hero-layout{padding:56px 0 62px;gap:32px}
  .ttd-unified .detail-copy h1{font-size:48px}
  .ttd-unified .detail-image-panel{min-height:320px}
  .ttd-unified .detail-section{padding:66px 0}
  .ttd-unified .detail-section h2{font-size:34px}
  .ttd-unified .charger-hero-layout{padding:56px 0;gap:34px}
  .ttd-unified .charger-hero h1{font-size:49px}
  .ttd-unified-footer .footer-main{grid-template-columns:1fr;gap:26px}
  .ttd-unified-footer .footer-brand{grid-column:auto}
  .ttd-unified-footer .footer-bottom{flex-direction:column;gap:8px}
}

@media(max-width:480px){
  .ttd-global-header{min-height:70px}
  .ttd-global-header .v23-nav{min-height:70px}
  .ttd-global-header .v23-brand img{max-width:150px;max-height:52px}
  .ttd-global-header .v23-menu{top:70px;left:10px;right:10px}
  .ttd-catalog-copy h1{font-size:46px}
  .ttd-catalog-visual{height:290px}
  .ttd-catalog-bus{width:108%;right:-34%}
  .ttd-catalog-pickup{width:59%;left:-10%}
  .ttd-unified .catalog-head h2{font-size:34px}
  .ttd-unified .model-card-top,.ttd-unified .model-card h3,.ttd-unified .model-card>p,.ttd-unified .model-mini-stats,.ttd-unified .model-card>a{margin-left:20px;margin-right:20px}
  .ttd-unified .model-card-top{padding-left:0;padding-right:0}
  .ttd-unified .model-card h3{font-size:26px}
}

@media(prefers-reduced-motion:reduce){
  .ttd-catalog-copy .catalog-jump a,.ttd-unified .model-card,.ttd-unified .charger-type-card{transition:none!important}
}


/* V2.4.4 — mobile navigation final state.
   Closed by default, compact right-side sheet when opened, and state is driven by aria-expanded + .open together. */
@media(max-width:900px){
  .ttd-global-header{position:sticky;top:0;z-index:300}
  .ttd-global-header .menu-toggle{display:flex!important;width:46px;height:46px;align-items:center;justify-content:center;z-index:330}
  .ttd-global-header .menu-toggle span{position:absolute;width:27px;height:2px;background:#111;border-radius:2px;margin:0;transition:transform .22s ease,opacity .16s ease}
  .ttd-global-header .menu-toggle span:nth-child(1){transform:translateY(-7px)}
  .ttd-global-header .menu-toggle span:nth-child(2){transform:translateY(0)}
  .ttd-global-header .menu-toggle span:nth-child(3){transform:translateY(7px)}
  .ttd-global-header .menu-toggle[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg)}
  .ttd-global-header .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .ttd-global-header .menu-toggle[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg)}
  body.menu-open::before{content:"";position:fixed;inset:0;background:rgba(7,9,12,.34);z-index:285;backdrop-filter:blur(1px)}
  .ttd-global-header .v23-menu{
    position:fixed!important;top:88px!important;right:16px!important;left:auto!important;bottom:auto!important;
    width:min(330px,calc(100vw - 32px))!important;max-height:calc(100dvh - 108px)!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;
    padding:8px 16px 12px!important;background:#fff!important;border:1px solid #e7e8eb!important;border-radius:16px!important;
    box-shadow:0 24px 70px rgba(0,0,0,.22)!important;overflow:auto!important;z-index:320!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transform:translateY(-8px) scale(.985)!important;transform-origin:top right!important;
    transition:opacity .18s ease,visibility .18s ease,transform .22s cubic-bezier(.16,1,.3,1)!important
  }
  .ttd-global-header .v23-menu.open{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important
  }
  .ttd-global-header .v23-menu a{
    min-height:48px!important;padding:12px 4px!important;border-bottom:1px solid #eceef1!important;
    font-size:17px!important;line-height:1.25!important;color:#17191d!important
  }
  .ttd-global-header .v23-menu a:last-child{border-bottom:0!important}
}
@media(max-width:560px){
  .ttd-global-header .v23-menu{top:80px!important;right:12px!important;width:min(310px,calc(100vw - 24px))!important}
}
