/* User feedback 1–7. Brand fidelity, undistorted images and obvious actions. */
.profile-logo{aspect-ratio:332/227;object-fit:contain;height:auto;max-height:86px;width:auto;max-width:150px}
.hero-stamp{transform:none;padding:12px 16px;font-family:"Noto Sans Thai",sans-serif;box-shadow:4px 4px 0 #d7e959;max-width:calc(100% - 32px)}
.hero-stamp span,.hero-stamp strong,.hero-stamp i{font-family:inherit;letter-spacing:0;font-style:normal;line-height:1.6;display:block}
.hero-stamp span{font-size:14px}.hero-stamp strong{font-size:19px;font-weight:600}
.story-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px;padding:60px 0 72px;min-height:0}
.story-hero h1{font-size:clamp(40px,4.7vw,66px);line-height:1.22;letter-spacing:-.025em}
.story-hero-stack{width:100%;max-width:460px;justify-self:end;padding:0 18px 18px 0}
.story-hero-stack:before{inset:18px 0 0 18px;border-radius:22px;transform:none}
.story-hero-stack img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;margin:0;box-shadow:none;border-radius:18px}
.story-hero-stack span{position:relative;display:inline-block;margin:16px 0 0;padding:9px 16px;left:auto;bottom:auto;font-family:inherit;letter-spacing:0;font-size:15px;font-weight:600;border-radius:8px}
.story-principle-grid h2,.story-gallery-head h2,.story-brief h2{line-height:1.28;letter-spacing:-.02em}
.story-card,.story-card.story-tall{min-height:0;grid-row:auto;aspect-ratio:4/5}
.story-card img{height:100%;width:100%;object-fit:contain}.story-grid{align-items:start}
.route{position:relative;padding:24px;border:2px solid #d8e3e8;transition:transform .18s,box-shadow .18s}
.route-preview{width:100%;height:150px;object-fit:contain;object-position:center;border-radius:12px;background:#fff;margin-bottom:20px}
.route-number{position:absolute;top:35px;left:35px;border-radius:50%;display:grid;place-items:center;width:36px;height:36px;background:#163b50;color:#fff;font-size:15px}
.route h3{margin:6px 0 14px;font-size:26px;line-height:1.45}.route p{margin-bottom:24px;line-height:1.8}
.route-blue{background:#edf9d9;border-color:#d0e6ab}.route-white{background:#e6f5f3;border-color:#b8dfda}.route-orange{background:#fff0e5;border-color:#f5cfb4}
.route .route-tag{display:flex;align-items:center;justify-content:center;min-height:52px;width:100%;margin-top:auto;padding:14px 16px;background:#123e56;color:#fff;border-radius:10px;font-family:inherit;font-size:16px;font-weight:600;line-height:1.5;text-align:center}
.route .route-tag:after{content:"";position:absolute;inset:0;border-radius:16px}
.route:hover,.route:has(a:focus-visible){transform:translateY(-4px);box-shadow:0 12px 0 #163b5012;border-color:#163b50}
.catalog-select{background:#123e56;color:#fff;border:2px solid #123e56;font-size:15px;font-weight:600;min-height:50px;cursor:pointer}
.catalog-select:hover{background:#075d6c;color:#fff}.catalog-card.is-selected .catalog-select{background:#d7e959;color:#173544;border-color:#57732b}
.production-section{padding:76px 0;background:#fff8ea;border-block:1px solid #efe0c4}
.production-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end;margin-bottom:32px}
.production-heading h2{margin:0;font-size:clamp(32px,3.2vw,46px);line-height:1.3;letter-spacing:-.02em}
.production-heading h2 em{color:#087d81;font-style:normal}.production-heading>p{font-size:17px;line-height:1.8;color:#48616c;max-width:450px}
.production-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.production-flow li{position:relative;padding:14px;background:#fff;border:1px solid #e0e5df;border-radius:16px;min-width:0}
.production-number{display:inline-block;color:#087d81;font-weight:700;font-size:15px;margin-bottom:8px}
.production-flow img{width:100%;height:130px;object-fit:contain;background:#f2f8fe;border-radius:8px}
.production-flow h3{font-size:18px;line-height:1.5;margin:16px 0 8px;letter-spacing:0}
.production-flow p{font-size:14px;line-height:1.8;color:#526a72;margin:0}
.production-branch{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:#e5efbb;padding:21px 24px;border-radius:12px;margin-top:24px}
.production-branch strong{font-size:19px}.production-branch span{flex:1;min-width:230px;font-size:15px;line-height:1.8}.production-branch .button{font-size:15px;background:#143e55;color:#fff;box-shadow:none}
.production-caption{font-size:13px;line-height:1.8;color:#586b70;margin:16px 0 0}
@media(max-width:1100px){.production-flow{grid-template-columns:repeat(3,minmax(0,1fr))}.production-flow img{height:155px}.production-heading{gap:30px}}
@media(max-width:900px){.story-hero{grid-template-columns:1fr;gap:30px}.story-hero-stack{justify-self:center;max-width:460px}.story-hero h1{font-size:46px}.production-heading{grid-template-columns:1fr;gap:12px}.profile-logo{max-height:72px}}
@media(max-width:600px){.profile-logo{width:113px;max-height:none}.story-hero{padding:34px 0 46px}.story-hero h1{font-size:36px;line-height:1.25}.story-hero-stack{max-width:360px}.story-hero-stack span{font-size:14px}.hero-stamp{left:12px;bottom:12px;padding:8px 12px}.hero-stamp span{font-size:13px}.hero-stamp strong{font-size:16px}.route-preview{height:138px}.route h3{font-size:25px}.route .route-tag{font-size:15px;min-height:52px}.production-section{padding:46px 0}.production-heading h2{font-size:31px}.production-heading>p{font-size:15px}.production-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.production-flow li{padding:12px}.production-flow img{height:106px}.production-flow h3{font-size:16px}.production-flow p{font-size:13px}.production-branch{padding:20px;gap:10px}.production-branch .button{width:100%}.catalog-select{font-size:14px;padding:10px 7px}.story-grid{display:grid;grid-template-columns:1fr;grid-auto-flow:row;overflow:visible;margin:0;padding:0;gap:20px}.story-card,.story-card.story-tall{aspect-ratio:4/5}}
@media(prefers-reduced-motion:reduce){.route{transition:none}.route:hover{transform:none}}
