:root{--navy:#071a2e;--navy2:#0b2745;--cyan:#11c5e8;--orange:#ff7a2f;--bg:#eef5f8;--ink:#10283b;--muted:#607483;--white:#fff;--radius:18px;--shadow:0 18px 55px rgba(7,26,46,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans Thai",sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.skip-link{position:fixed;left:12px;top:-80px;background:#fff;padding:10px 16px;z-index:99}.skip-link:focus{top:12px}.topbar{background:#051525;color:#b9c7d2;font-size:12px;letter-spacing:.3px}.topbar-inner{height:37px;display:flex;justify-content:space-between;align-items:center}.topbar-inner div{display:flex;gap:14px;align-items:center}.topbar i{height:12px;width:1px;background:#426078}.site-header{position:relative;z-index:20;background:var(--navy)}.nav{height:86px;display:flex;align-items:center;justify-content:space-between}.brand{color:#fff;display:flex;align-items:center;gap:12px}.brand-mark{display:flex;height:37px}.brand-mark b{font-family:Manrope,sans-serif;font-size:18px;line-height:37px;width:24px;text-align:center;transform:skew(-8deg);background:var(--cyan);color:var(--navy)}.brand-mark b:nth-child(2){background:#fff}.brand-mark b:nth-child(3){background:var(--orange)}.brand strong{font:800 19px/1 Manrope,sans-serif;letter-spacing:1.8px;display:block}.brand small{font:600 7px/1 Manrope,sans-serif;letter-spacing:2px;color:#90a9bb}.nav-links{display:flex;align-items:center;gap:27px;color:#e5edf3;font-size:14px;font-weight:500}.nav-links>a:not(.button){padding:12px 0;transition:.2s}.nav-links>a:not(.button):hover{color:var(--cyan)}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:0;border-radius:8px;padding:14px 21px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:18px}.button-primary{background:var(--orange);color:#fff}.button-primary:hover{background:#ed6720}.nav-quote{padding:11px 18px}.menu-button{display:none}.hero{position:relative;background:var(--navy);color:#fff;overflow:hidden}.hero-grid,.quote-pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(17,197,232,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(17,197,232,.045) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,#000,transparent 75%)}.hero-content{min-height:620px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:62px;padding-top:30px;padding-bottom:55px;position:relative}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--cyan);font:700 11px/1.2 Manrope,sans-serif;letter-spacing:2px;margin-bottom:22px}.eyebrow span{width:30px;height:2px;background:currentColor}.eyebrow.dark{color:#058dab}.hero h1,.section h2,.quote h2{font-size:clamp(42px,5vw,67px);line-height:1.12;letter-spacing:-2px;margin:0;font-weight:800}.hero h1 em,.section h2 em,.quote h2 em{font-style:normal;color:var(--cyan)}.hero-copy>p{color:#b8cad6;font-size:16px;line-height:1.9;max-width:585px;margin:26px 0}.hero-actions{display:flex;align-items:center;gap:30px}.text-link{font-weight:700;border-bottom:1px solid #587087;padding:10px 0}.text-link span{margin-left:14px;color:var(--cyan)}.hero-cert{display:flex;align-items:center;gap:12px;margin-top:35px;color:#c4d3dc}.hero-cert span>*{display:block}.hero-cert small{font:500 9px Manrope,sans-serif;letter-spacing:.8px;color:#7690a3}.iso-badge{border:1px solid #537188;padding:5px 9px;font:800 12px Manrope}.hero-visual{height:490px;position:relative}.visual-main{position:absolute;inset:0 0 35px 40px;border-radius:2px 22px 2px 80px;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%,0 13%)}.photo-placeholder{background:linear-gradient(135deg,rgba(8,34,55,.2),rgba(8,34,55,.75)),repeating-linear-gradient(115deg,#557482 0,#557482 6px,#34505e 7px,#34505e 23px);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#d4e0e4;letter-spacing:2px}.photo-placeholder small{font-size:11px;letter-spacing:.3px;opacity:.7}.color-bars{position:absolute;right:-12px;top:60px;display:grid;gap:6px}.color-bars i{width:7px;height:38px;background:#f9d70b}.color-bars i:nth-child(2){background:#ec3292}.color-bars i:nth-child(3){background:var(--cyan)}.color-bars i:nth-child(4){background:#151b22}.experience-card{position:absolute;left:0;bottom:0;background:var(--cyan);color:var(--navy);padding:20px 27px;display:flex;align-items:center;gap:14px;border-radius:2px 18px 2px 2px}.experience-card strong{font:800 48px/1 Manrope}.experience-card sup{font-size:22px}.experience-card span{font-size:12px;font-weight:700;line-height:1.4}.quality-tag{position:absolute;right:-18px;bottom:63px;background:#fff;color:var(--ink);padding:13px 17px;box-shadow:var(--shadow);display:flex;gap:10px;align-items:center}.quality-tag>span{border:2px solid var(--orange);color:var(--orange);border-radius:50%;width:24px;height:24px;text-align:center;line-height:20px}.quality-tag strong,.quality-tag small{display:block}.quality-tag strong{font:800 10px Manrope;letter-spacing:1px}.quality-tag small{font-size:9px;color:#70818c}.trust-strip{border-top:1px solid #1b3850;background:#081d32}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid>div{min-height:106px;display:flex;align-items:center;gap:18px;padding:20px 34px;border-right:1px solid #1b3850}.trust-grid>div:first-child{border-left:1px solid #1b3850}.trust-grid strong{font:800 30px Manrope;color:#fff}.trust-grid strong small{font-size:12px}.trust-grid span{font-size:11px;color:#8299aa;line-height:1.5}.section{padding:105px 0}.services{background:var(--bg)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.section-heading h2,.about h2,.faq-section h2{font-size:clamp(36px,4.4vw,57px);line-height:1.17;margin:0;letter-spacing:-1.5px}.section-heading h2 em,.about h2 em,.faq-section h2 em{color:#079ebd}.section-heading>p{width:430px;color:var(--muted);margin:0 0 4px;line-height:1.85}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;border-radius:var(--radius);padding:29px 28px 25px;min-height:333px;position:relative;overflow:hidden;box-shadow:0 4px 20px rgba(7,26,46,.04);transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card.featured{background:var(--navy2);color:#fff}.service-no{position:absolute;right:22px;top:20px;font:700 11px Manrope;color:#9cafba}.service-icon{font-size:30px;color:var(--cyan);height:60px}.service-card h3{font:800 27px/1.15 Manrope,sans-serif;margin:10px 0 14px}.service-card p{font-size:13px;color:#667a88;line-height:1.7;min-height:66px}.featured p{color:#adc0cd}.service-card b{display:flex;justify-content:space-between;border-top:1px solid #e5ecef;padding-top:15px;margin-top:18px;font-size:11px}.featured b{border-color:#294861}.service-card b span{font-size:17px;color:var(--orange)}.work{background:var(--navy);color:#fff}.section-heading.light p{color:#acc0ce}.button-outline{border:1px solid #547087;background:transparent;color:#fff}.filters{display:flex;gap:10px;margin-bottom:28px;overflow:auto}.filters button{border:1px solid #2b465d;border-radius:30px;padding:8px 17px;background:transparent;color:#aebfcb;white-space:nowrap;cursor:pointer}.filters button.active{background:var(--cyan);border-color:var(--cyan);color:var(--navy);font-weight:700}.work-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}.work-card{background:#0d2a45;border-radius:var(--radius);overflow:hidden;transition:.25s}.work-card.hidden{display:none}.work-card:hover{transform:translateY(-5px)}.work-image{height:275px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.55);font:700 11px Manrope;letter-spacing:2px;background-color:#2c4b59;background-image:linear-gradient(135deg,transparent,rgba(7,26,46,.7)),repeating-linear-gradient(45deg,rgba(255,255,255,.08) 0,rgba(255,255,255,.08) 1px,transparent 1px,transparent 15px)}.image-two{background-color:#59685e}.image-three{background-color:#5d5050}.work-card>div:last-child{padding:20px 22px;position:relative}.work-card small{font:700 9px Manrope;letter-spacing:1.4px;color:var(--cyan)}.work-card h3{font:700 20px Manrope;margin:6px 40px 0 0}.work-card a{position:absolute;right:20px;bottom:20px;color:var(--orange);font-size:22px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-visual{height:570px;position:relative}.about-photo{position:absolute;inset:0 35px 0 0;border-radius:var(--radius)}.about-float{position:absolute;right:0;bottom:38px;background:var(--orange);color:#fff;border-radius:14px 0 14px 0;padding:21px 25px;display:flex;align-items:center;gap:13px}.about-float strong{font:800 33px Manrope}.about-float span{font-size:11px;font-weight:600}.about-copy>p{color:var(--muted);line-height:1.9}.about-copy ul{list-style:none;padding:0;margin:28px 0}.about-copy li{display:flex;gap:18px;padding:17px 0;border-top:1px solid #dce6ea}.about-copy li>span{color:var(--cyan);font:800 12px Manrope}.about-copy li strong,.about-copy li small{display:block}.about-copy li strong{font-size:15px}.about-copy li small{color:#748795;margin-top:3px}.dark-link{border-color:#bbc7cd}.process{background:var(--navy2);color:#fff}.center-heading{text-align:center}.center-heading .eyebrow{justify-content:center}.center-heading h2{font-size:clamp(36px,4.2vw,55px)}.process-list{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);padding:0;margin:60px 0 0;position:relative}.process-list:before{content:"";position:absolute;top:62px;left:8%;right:8%;height:1px;background:#31516b}.process-list li{text-align:center;position:relative}.process-list b{display:block;color:#57738a;font:700 10px Manrope}.process-icon{position:relative;margin:18px auto;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#102e49;border:1px solid #44647d;color:var(--cyan);font-size:22px}.process-list li:nth-child(4) .process-icon{background:var(--orange);border-color:var(--orange);color:#fff}.process-list strong,.process-list small{display:block}.process-list strong{font-size:13px}.process-list small{font-size:10px;color:#7891a4;margin-top:4px}.faq-section{background:var(--bg)}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:100px}.faq-grid>div:first-child>p{color:var(--muted);margin:20px 0 28px}.button-dark{background:var(--navy);color:#fff}.accordion details{border-top:1px solid #cedce2;padding:20px 5px}.accordion details:last-child{border-bottom:1px solid #cedce2}.accordion summary{cursor:pointer;list-style:none;font-weight:700;display:flex;justify-content:space-between}.accordion summary span{font-size:22px;color:#079ebd}.accordion details[open] summary span{transform:rotate(45deg)}.accordion p{color:var(--muted);font-size:13px;line-height:1.8;padding-right:40px}.quote{background:var(--navy);color:#fff;padding:90px 0;position:relative;overflow:hidden}.quote-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;position:relative;align-items:start}.quote h2{font-size:clamp(38px,4.5vw,59px)}.quote-grid>div>p{color:#a8bdca;line-height:1.9;max-width:470px}.quick-contact{margin-top:36px;display:grid;gap:13px}.quick-contact a{border-left:2px solid var(--cyan);padding-left:15px}.quick-contact small,.quick-contact strong{display:block}.quick-contact small{color:#7892a5}.quick-contact strong{font:700 16px Manrope;margin-top:2px}.quote-form{background:#fff;color:var(--ink);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.quote-form label{font-size:12px;font-weight:600}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;border:1px solid #d9e3e7;border-radius:7px;padding:11px 12px;margin-top:6px;background:#f9fbfc;outline:0}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(17,197,232,.15)}.full{grid-column:1/-1}.file-box{border:1px dashed #9fb4bf;border-radius:8px;margin:18px 0;padding:13px;display:flex!important;align-items:center;gap:12px;cursor:pointer}.file-box>span{font-size:24px;color:#079ebd}.file-box strong,.file-box small{display:block}.file-box small{color:#8a9ba5}.consent{display:flex!important;align-items:flex-start;gap:8px;color:#667a88;margin-bottom:18px}.consent input{width:auto;margin:4px 0 0}.quote-form>.button{width:100%}.form-note{text-align:center;font-size:12px;color:#138551;margin:10px 0 0}footer{background:#051525;color:#a4b5c0;padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1.1fr .7fr;gap:60px}.footer-grid h3{font-size:12px;color:#fff;margin:0 0 18px}.footer-grid p,.footer-grid a:not(.brand){font-size:12px;line-height:1.9;display:block}.footer-brand{margin-bottom:20px}.line-button{border:1px solid #496275;color:#fff!important;padding:8px 12px;text-align:center;margin-top:15px}.footer-bottom{border-top:1px solid #1b3448;margin-top:45px;padding:22px 0;display:flex;justify-content:space-between;font-size:10px}.footer-bottom div{display:flex;gap:25px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:960px){.nav-links{position:absolute;left:0;right:0;top:86px;background:#0b2745;padding:22px;display:none;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.menu-button{display:flex;width:43px;height:42px;background:transparent;border:1px solid #36546b;border-radius:7px;flex-direction:column;justify-content:center;gap:5px;align-items:center}.menu-button span{width:19px;height:2px;background:#fff}.menu-button em{position:absolute;clip:rect(0,0,0,0)}.hero-content{grid-template-columns:1fr;padding-top:70px}.hero-visual{height:410px}.trust-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.work-grid{grid-template-columns:1fr 1fr}.work-card:first-child{grid-column:1/-1}.about-grid{gap:45px}.process-list{grid-template-columns:repeat(3,1fr);gap:35px 0}.process-list:before{display:none}.faq-grid,.quote-grid{gap:45px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}}
@media(max-width:680px){.container{width:min(100% - 30px,1180px)}.topbar-inner>span{display:none}.topbar-inner{justify-content:center}.nav{height:72px}.nav-links{top:72px}.hero-content{padding-top:55px;gap:35px}.hero h1{font-size:43px;letter-spacing:-1px}.hero-copy>p{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.hero-visual{height:330px}.visual-main{left:20px}.quality-tag{right:0}.trust-grid>div{padding:18px 15px;min-height:90px}.trust-grid strong{font-size:24px}.section{padding:75px 0}.section-heading{display:block}.section-heading>p{width:auto;margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:305px}.work-grid{grid-template-columns:1fr}.work-card:first-child{grid-column:auto}.work-image{height:240px}.about-grid{grid-template-columns:1fr}.about-visual{height:390px}.faq-grid,.quote-grid{grid-template-columns:1fr}.process-list{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.quote-form{padding:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{gap:15px;align-items:flex-start;flex-direction:column}.footer-bottom div{flex-wrap:wrap}.experience-card{padding:14px 18px}.experience-card strong{font-size:37px}.about-copy h2{font-size:39px}.section-heading h2,.faq-section h2{font-size:39px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.button,.service-card,.work-card{transition:none}}
.service-image{height:220px;margin:-29px -28px 18px;overflow:hidden;background:#dce8ed}.service-image img{width:100%;height:100%;object-fit:cover;display:block}.service-card:has(.service-image){padding-top:0}.service-card:has(.service-image) .service-no{top:20px}.service-card b{display:none}.service-card{cursor:default}.about-photo img{width:100%;height:100%;object-fit:cover;display:block}

/* Official TUT TECH logo */
.brand{gap:13px}
.brand-logo{display:flex;align-items:center;justify-content:center;width:100px;height:64px;padding:4px 7px;background:#fff;border-radius:0 0 8px 8px;overflow:hidden}
.brand-logo img{display:block;width:100%;height:100%;object-fit:contain}
.brand-tagline{font:700 9px/1.3 Manrope,sans-serif;letter-spacing:2px;color:#9db3c2}
.footer-brand{align-items:flex-end}
.footer-brand .brand-logo{width:108px;height:67px;border-radius:7px}
.footer-brand .brand-tagline{padding-bottom:5px}
@media(max-width:680px){.brand-logo{width:78px;height:52px}.brand-tagline{display:none}}

/* Transparent logo lockup with company name retained beside it */
.brand-logo,.footer-brand .brand-logo{width:72px;height:55px;padding:0;background:transparent;border-radius:0;overflow:visible}
.brand-name{display:flex;min-height:29px;padding-left:12px;border-left:1px solid rgba(17,197,232,.45);white-space:nowrap;flex-direction:column;justify-content:center}
.brand-name strong{font:800 10px/1 Manrope,sans-serif;letter-spacing:1.4px;display:block;color:#fff}
.brand-name small{font:600 7px/1 Manrope,sans-serif;letter-spacing:1.7px;color:#90a9bb;display:block;margin-top:5px}
.footer-brand{align-items:center}
@media(max-width:680px){.brand{gap:9px}.brand-logo,.footer-brand .brand-logo{width:58px;height:44px}.brand-name{min-height:25px;padding-left:9px}.brand-name strong{font-size:9px}.brand-name small{font-size:6px;letter-spacing:1.2px;margin-top:4px}}
/* Real factory image supplied by TUT TECH */
.hero-visual .visual-main.photo-placeholder {
  background-image: url('FactoryImage-enhanced.png');
  background-size: cover;
  background-position: center;
  min-height: 460px;
}
.hero-visual .visual-main.photo-placeholder > span,
.hero-visual .visual-main.photo-placeholder > small { display: none; }

/* Keep the real image after the legacy placeholder background rules. */
.hero-visual .visual-main.photo-placeholder { background: url('FactoryImage-enhanced.png') center / cover no-repeat !important; }
.hero-visual .visual-main.photo-placeholder > span,
.hero-visual .visual-main.photo-placeholder > small { display: none !important; }
