:root{--red:#a50034;--red-dark:#86002a;--ink:#242426;--muted:#77777c;--line:#e8e8e9;--bg:#faf9f7;--pink:#fcf1f4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Plus Jakarta Sans','Noto Sans Thai',sans-serif;color:var(--ink);background:var(--bg);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a:focus-visible,button:focus-visible{outline:3px solid #d75c80;outline-offset:5px}input:focus,select:focus{border-color:var(--red);outline:3px solid #a5003410}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px;flex-shrink:0}[hidden]{display:none!important}.skip{position:fixed;top:-100px;left:15px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.site-header{height:96px;padding:0 max(5.5vw,24px);display:flex;align-items:center;justify-content:space-between;background:#fff;gap:30px}.brand{display:flex;align-items:center;gap:9px;white-space:nowrap}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff;font-weight:600;font-size:22px;letter-spacing:-2px;padding-right:2px}.brand-word{font-size:23px;font-weight:700;line-height:1.15;letter-spacing:-1px}.brand-word b{font-weight:500}.brand-word small{font-size:11px;letter-spacing:.5px;display:block;margin-top:7px;color:#78787b}.site-header nav{display:flex;height:100%;gap:36px;align-items:stretch}.site-header nav a{display:flex;align-items:center;position:relative;font-size:14px;font-weight:600;white-space:nowrap;color:#777}.site-header nav a.active{color:var(--red)}.site-header nav a.active:after{position:absolute;content:'';bottom:0;height:3px;background:var(--red);left:0;right:0}.anniversary{display:flex;gap:7px;align-items:center;color:var(--red)}.anniversary>b{font-size:47px;line-height:1;letter-spacing:-3px}.anniversary sup{font-size:15px;letter-spacing:-1px;vertical-align:top;position:relative;top:5px}.anniversary>span{font-size:8px;line-height:1.5;letter-spacing:1px}.anniversary strong{font-size:7px}.campaign{position:relative;min-height:510px;overflow:hidden;background:#c3f0f0}.campaign-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:66% 48%}.campaign-shade{position:absolute;inset:0;background:linear-gradient(90deg,#effaf9 0%,#eafaf5f5 24%,#e8f8f1b5 40%,#ddf9f010 61%,transparent 85%)}.campaign-copy{position:relative;padding:46px 0 43px;margin-left:8.5%;max-width:530px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;display:flex;gap:8px;align-items:center;color:#38615c}.eyebrow>span{height:5px;width:5px;background:var(--red);border-radius:50%}.campaign-intro{font-size:18px;font-weight:600;margin:21px 0 5px}.campaign h1{font-size:62px;line-height:1.24;letter-spacing:-2px;font-weight:800;margin:0}.campaign h1>span{color:var(--red)}.campaign-description{font-size:16px;line-height:1.8;color:#536965;margin:18px 0}.campaign-date{display:inline-flex;gap:9px;align-items:center;background:#ffffffb3;border:1px solid #fff;border-radius:40px;padding:8px 17px;font-size:13px;font-weight:600;color:#3b5d56}.campaign-date svg{width:17px;height:17px}.destination{position:absolute;top:43px;right:8%;color:white;letter-spacing:3px;font-size:9px;text-align:center;text-shadow:0 2px 20px #004f6e55}.destination>span{display:block;font-family:Georgia,serif;font-size:55px;letter-spacing:-2px;font-style:italic;line-height:1.3}.destination>small{font-size:9px;letter-spacing:3px}.prize-tag{position:absolute;bottom:42px;right:7%;border-radius:14px;padding:20px 27px;background:#fffffff2;box-shadow:0 10px 40px #00454515;transform:rotate(-3deg);width:354px}.prize-tag>span{font-size:12px;color:#5d6970}.prize-tag>strong{display:block;font-size:25px;color:var(--red);line-height:1.6}.prize-tag i{font-size:11px;font-style:normal;color:#666;font-weight:500}.prize-tag>div{display:flex;border-top:1px dashed #ccc;padding-top:9px;margin-top:5px;gap:14px;align-items:center}.prize-tag b{font-size:14px}.prize-tag div>span{font-size:10px;color:#737373}.image-disclaimer{position:absolute;bottom:10px;right:20px;font-size:10px;color:white;text-shadow:0 1px 4px #0009}.campaign-strip{display:flex;justify-content:center;align-items:center;gap:15px;background:var(--red);color:white;padding:13px 20px;font-size:13px}.campaign-strip p{margin:0}.campaign-strip strong{font-weight:700;margin:0 3px}.campaign-strip a{font-size:11px;border-bottom:1px solid #ffffff70;margin-left:22px;white-space:nowrap}.strip-icon{font-size:20px;color:#f1cfa1}.page-shell{max-width:1176px;margin:0 auto;display:grid;grid-template-columns:1fr 1.35fr;gap:72px;padding:64px 24px 80px;align-items:start}.intro-panel{padding-top:16px}.section-kicker{font-size:9px;letter-spacing:1.8px;color:var(--red);font-weight:800}.intro-panel h2{font-size:34px;line-height:1.5;letter-spacing:-.7px;margin:15px 0 12px;font-weight:700}.intro-panel>p{font-size:14px;line-height:1.9;color:var(--muted);margin:0}.aside-features{margin:30px 0}.aside-features>div{display:flex;gap:15px;margin-bottom:23px;align-items:center}.feature-icon{display:grid;place-items:center;width:43px;height:43px;border:1px solid #eadde0;color:var(--red);border-radius:12px;font-size:15px;font-weight:700;flex-shrink:0}.feature-icon svg{width:21px;height:21px}.aside-features b,.prepare-note b{font-size:13px;font-weight:600}.aside-features p{font-size:12px;color:var(--muted);margin:3px 0 0}.prepare-note{display:flex;padding:19px;gap:13px;background:#f0eeea;border-radius:12px}.prepare-note svg{color:#6b6b6b;width:21px;height:21px;margin-top:3px}.prepare-note p{font-size:12px;color:#737373;line-height:1.8;margin:4px 0 0}.text-link{display:inline-flex;gap:25px;font-size:12px;font-weight:600;margin-top:22px;color:#656368;border-bottom:1px solid #d4d0d0;padding-bottom:5px}.registration-card{padding:30px 37px;background:white;border:1px solid #eee;border-radius:20px;box-shadow:0 8px 36px #25202205}.stepper{display:flex;padding:0 0 25px;margin:0 0 25px;border-bottom:1px solid var(--line);list-style:none}.stepper li{position:relative;flex:1;display:flex;align-items:center;flex-direction:column;gap:9px}.stepper li:before{content:'';height:1px;background:#e2e2e4;position:absolute;top:17px;left:-50%;right:50%;z-index:0}.stepper li:first-child:before{display:none}.stepper li>span{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;border:1px solid #e6e6e7;background:#fff;color:#a2a2a7;z-index:1;font-size:13px;font-weight:600}.stepper li>b{font-size:10px;font-weight:500;color:#999;white-space:nowrap}.stepper li.current>span{background:var(--red);color:white;border-color:var(--red);box-shadow:0 0 0 5px #fbf0f3}.stepper li.current>b,.stepper li.done>b{color:var(--red);font-weight:600}.stepper li.done>span{background:#f9eaf0;color:var(--red);border-color:#f9eaf0}.stepper li.done+li:before{background:#d795ad}.form-heading{display:flex;justify-content:space-between;align-items:center;margin:4px 0 15px}.form-icon{width:43px;height:43px;display:grid;place-items:center;background:var(--pink);color:var(--red);border-radius:12px}.form-icon svg{width:23px;height:23px}.step-count{font-size:9px;font-weight:600;letter-spacing:1px;color:#a5a5a8}.form-step h3{font-size:21px;letter-spacing:-.4px;font-weight:600;line-height:1.55;margin:0 0 5px;outline:none}.form-subtitle{font-size:12px;color:#8b8b90;margin:0 0 24px}label{display:block;font-size:13px;font-weight:500;margin-bottom:8px}em{font-style:normal;color:var(--red)}input:not([type=checkbox]):not([type=file]),select{width:100%;border:1px solid #dedee1;border-radius:8px;background:#fff;padding:12px 14px;min-height:47px;font-size:14px;color:var(--ink);transition:border-color .2s}input::placeholder{color:#aaa9af}input[readonly],select:disabled{background:#f6f6f7!important;color:#75757c!important}.phone-input{position:relative}.phone-input>span{display:flex;position:absolute;left:15px;top:13px;align-items:center;gap:15px;font-size:14px}.phone-input i{height:22px;border-right:1px solid #ddd}.phone-input input{padding-left:84px!important;letter-spacing:1px}.field-help{display:block;color:#99999f;font-size:10px;margin-top:8px}.consent{display:flex;gap:11px;font-size:12px;line-height:1.9;font-weight:400;margin:23px 0 25px;align-items:start}.consent input{accent-color:var(--red);width:17px;height:17px;margin:3px 0 0;flex-shrink:0}.consent a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;min-height:47px;padding:12px 22px;font-size:13px;font-weight:600;transition:background .2s,transform .2s;line-height:1.6;text-align:center}.button:hover{transform:translateY(-1px)}.primary{background:var(--red);color:#fff}.primary:hover{background:var(--red-dark)}.secondary{background:#f3f2f2;color:#606064}.full{width:100%}.secure-note{font-size:10px;color:#a1a1a5;display:flex;align-items:center;justify-content:center;gap:6px;margin:15px 0 0}.secure-note svg{width:13px;height:13px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-bottom:20px}.fields .wide{grid-column:1/-1}.form-actions{display:flex;gap:12px;margin-top:22px}.form-actions .primary{flex:1}.error-message{font-size:12px;color:#a50034;background:#fdf0f3;padding:11px 13px;border-radius:6px;margin:13px 0}.upload-zone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #d7abb9;border-radius:10px;background:#fffafb;min-height:140px;text-align:center;padding:18px;color:var(--red);cursor:pointer;gap:6px}.upload-zone:focus-within,.upload-zone.dragover{outline:2px solid var(--red);background:#fcedf2}.upload-zone b{font-size:12px;font-weight:500}.upload-zone span{font-size:10px;color:#999}.upload-zone input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.info-note{background:#f5f5f6;color:#888;font-size:11px;line-height:1.8;padding:12px 15px;border-radius:8px;margin-top:16px}#file-preview{display:flex;align-items:center;gap:12px;font-size:11px;padding-top:12px;overflow:hidden}#file-preview img{width:55px;height:55px;object-fit:cover;border-radius:5px}#file-preview span{word-break:break-all;flex:1}#remove-file{border:0;background:none;color:var(--red);white-space:nowrap}.success-panel{text-align:center;padding:18px 0}.success-icon{width:65px;height:65px;border-radius:50%;background:#eaf5ed;color:#32814c;font-size:30px;display:grid;place-items:center;margin:0 auto 25px}.success-panel .section-kicker{display:block}.success-panel h3{font-size:25px;margin:12px 0;outline:none}.success-panel p{font-size:14px;color:var(--muted)}.receipt{background:#faf7f8;padding:20px;margin:25px 0;display:flex;align-items:center;flex-direction:column;gap:10px;border-radius:10px}.receipt small{font-size:12px;color:var(--muted)}.receipt strong{font-size:19px;color:var(--red)}.success-panel .secondary{margin-top:10px}.status{display:inline-flex;padding:4px 12px;border-radius:20px;font-size:11px;white-space:nowrap}.pending{color:#976609;background:#fff5d9}.secondary-page{max-width:1080px;margin:0 auto;padding:55px 24px 75px}.page-heading{text-align:center;margin-bottom:32px}.page-heading h2{font-size:30px;margin:12px 0 8px;line-height:1.5}.page-heading p{font-size:14px;color:var(--muted);margin:0}.history-search{max-width:660px;margin:0 auto;background:#fff;border:1px solid var(--line);padding:25px;border-radius:15px}.history-search>div{display:flex;gap:12px}.history-search .button{white-space:nowrap}.empty-state{text-align:center;padding:50px 20px;color:#85858b}.empty-state>span{width:60px;height:60px;display:grid;place-items:center;background:#eeecec;border-radius:50%;font-size:35px;margin:auto auto 16px}.empty-state h3{font-size:18px;color:#696970;margin:0 0 7px}.empty-state p{font-size:13px}.history-privacy{text-align:center;font-size:11px;color:#999}.results-header{display:flex;justify-content:space-between;align-items:center;margin:35px 0 17px;font-size:15px}.history-item{background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:15px;padding:24px}.history-item header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:15px;gap:12px}.history-item h3{font-size:16px;margin:0}.history-item dl{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:0}.history-item dt{font-size:11px;color:#96969b}.history-item dd{font-size:13px;margin:4px 0 0;overflow-wrap:anywhere}.bonus-card{padding:27px;background:#f6e9ed;border-radius:15px;display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}.bonus-card h3{font-size:19px;margin:8px 0}.bonus-card p{font-size:12px;color:#836975;margin:0}.bonus-dates{display:flex;gap:28px;flex-shrink:0}.bonus-dates span{display:flex;flex-direction:column;text-align:center;color:var(--red);font-size:11px}.bonus-dates b{font-size:26px;line-height:1.5}.terms-card{background:white;border:1px solid var(--line);border-radius:15px;padding:35px 38px}.terms-card h3{font-size:20px;margin:0 0 25px}.terms-card ol{padding-left:25px;font-size:14px;line-height:2;color:#66666d;margin:0}.terms-card li{padding-left:8px;margin-bottom:12px}.terms-card li::marker{color:var(--red);font-weight:600}.terms-card a{color:var(--red);text-decoration:underline;overflow-wrap:anywhere}.terms-bottom{text-align:center;margin-top:35px;font-size:15px}footer{background:#fff;border-top:1px solid var(--line);padding:26px max(6vw,24px) 20px}.footer-top{display:flex;align-items:center;gap:25px;padding-bottom:22px}.footer-top .brand-mark{width:30px;height:30px;font-size:16px}.footer-top .brand-word{font-size:18px}.footer-top>span{font-size:12px;color:#999}.footer-top>a:last-child{margin-left:auto;font-size:11px;color:#8c8c92}.footer-top>a b{color:#555;font-size:13px;margin-left:10px}.footer-bottom{/*border-top:1px solid #eee;padding-top:18px;*/display:flex;gap:25px;font-size:10px;color:#a1a1a5}.footer-bottom>span{margin-right:auto}body:not([data-page="register"]) .campaign{min-height:330px}body:not([data-page="register"]) .campaign-copy{padding-top:30px;padding-bottom:30px}body:not([data-page="register"]) .campaign h1{font-size:43px}body:not([data-page="register"]) .campaign-description{display:none}body:not([data-page="register"]) .campaign-intro{margin-top:14px;font-size:16px}body:not([data-page="register"]) .campaign-date{margin-top:16px}body:not([data-page="register"]) .destination{display:none}@media(min-width:1600px){.campaign-copy{margin-left:calc((100vw - 1200px)/2)}.campaign{min-height:550px}.campaign-copy{padding-top:65px}.campaign h1{font-size:70px}}@media(max-width:1000px){.site-header{padding:0 25px;gap:15px}.site-header nav{gap:20px}.anniversary{display:none}.campaign-copy{margin-left:6%}.campaign h1{font-size:52px}.campaign-shade{background:linear-gradient(90deg,#effaf9f5 0%,#eafaf5e8 25%,#e8f8f1a0 46%,transparent 80%)}.prize-tag{width:305px;right:4%;padding:17px}.prize-tag>strong{font-size:22px}.page-shell{gap:35px;padding:45px 30px 60px;grid-template-columns:1fr 1.4fr}.registration-card{padding:25px}.intro-panel h2{font-size:29px}.bonus-card{flex-direction:column;text-align:center}.bonus-dates{gap:50px}.footer-top>span{display:none}}@media(max-width:700px){.site-header{height:auto;min-height:110px;flex-wrap:wrap;justify-content:center;gap:0;padding:15px 16px 0}.brand-mark{width:35px;height:35px;font-size:19px}.brand-word{font-size:21px}.brand-word small{display:none}.site-header nav{height:49px;width:100%;justify-content:center;gap:28px}.site-header nav a{font-size:12px}.campaign{min-height:520px}.campaign-image{object-position:62% center}.campaign-shade{background:linear-gradient(90deg,#ecfaf5ee 0%,#e8f8f1ce 38%,#e8f8f170 69%,#e8f8f105),linear-gradient(0deg,#045b6e20,transparent)}.campaign-copy{margin-left:7%;padding-top:27px}.eyebrow{font-size:8px;letter-spacing:1.3px}.campaign-intro{font-size:15px;margin-top:16px}.campaign h1{font-size:44px;letter-spacing:-1px;line-height:1.3}.campaign-description{font-size:13px;margin:11px 0 14px}.campaign-date{font-size:11px;padding:7px 12px}.campaign-date svg{width:14px;height:14px}.destination{display:none}.prize-tag{width:290px;right:7%;bottom:32px;padding:13px 18px;transform:rotate(-2deg)}.prize-tag>span{font-size:10px}.prize-tag>strong{font-size:22px}.prize-tag>div{padding-top:6px;margin-top:4px}.prize-tag div>span{font-size:9px}.prize-tag b{font-size:12px}.campaign-strip{font-size:11px;padding:12px 16px;gap:8px;flex-wrap:wrap;text-align:center}.strip-icon{display:none}.campaign-strip p{max-width:340px}.campaign-strip strong{display:inline-block}.campaign-strip a{margin-left:0;font-size:10px}.page-shell{display:flex;flex-direction:column;gap:25px;padding:29px 20px 40px}.intro-panel{padding:0;width:100%}.intro-panel .section-kicker{font-size:8px}.intro-panel h2{font-size:26px;line-height:1.4;margin:9px 0}.intro-panel h2 br{display:none}.intro-panel>p{font-size:12px}.intro-panel>p br{display:none}.aside-features,.prepare-note,.intro-panel>.text-link{display:none}.registration-card{width:100%;padding:25px 22px;border-radius:15px}.stepper{padding-bottom:22px;margin-bottom:22px}.stepper li>b{font-size:10px}.form-step h3{font-size:19px}.form-subtitle{font-size:11px}.consent{font-size:11px}.fields{gap:14px}.fields>div{grid-column:1/-1}.form-actions .button{padding:12px 14px;font-size:12px}.secondary-page{padding:32px 20px 45px}.page-heading h2{font-size:23px}.page-heading p{font-size:12px}.history-search{padding:20px}.history-search>div{flex-direction:column}.history-item{padding:18px}.history-item header{align-items:flex-start}.history-item h3{font-size:13px}.history-item dl{grid-template-columns:1fr 1fr}.bonus-card{padding:23px 18px;gap:15px}.bonus-card h3{font-size:17px}.bonus-dates{gap:23px}.bonus-dates b{font-size:23px}.bonus-dates span{font-size:10px}.terms-card{padding:25px 19px}.terms-card h3{font-size:18px}.terms-card ol{font-size:13px;padding-left:20px}.terms-card li{padding-left:3px}.footer-top{flex-wrap:wrap;gap:14px;justify-content:center}.footer-top>a:last-child{margin-left:0}.footer-bottom{flex-wrap:wrap;gap:8px 20px;justify-content:center;text-align:center;font-size:9px}.footer-bottom>span{width:100%;margin-right:0}body:not([data-page="register"]) .campaign{min-height:270px}body:not([data-page="register"]) .campaign h1{font-size:37px}body:not([data-page="register"]) .prize-tag{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* ===== Consent group (เงื่อนไขความยินยอม) ===== */
.consent-group{margin:20px 0 18px;padding:16px 16px 6px;background:#faf9f9;border:1px solid var(--line);border-radius:10px}
.consent-title{margin:0 0 10px;font-size:12px;font-weight:600;line-height:1.6;color:#55555a;letter-spacing:0}
.consent-title:not(:first-child){margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.consent-group .consent{margin:0 0 11px;gap:10px;font-size:12px;line-height:1.7;color:#4a4a4f}
.consent-group .consent input{width:16px;height:16px;margin:3px 0 0}
.consent-note{margin:-2px 0 10px;padding-left:26px;font-size:11px;line-height:1.7;color:#85858b}
.consent-note a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
@media(min-width:1600px){.consent-group .consent{font-size:12.5px}.consent-title{font-size:12.5px}.consent-note{font-size:11.5px}}
@media(max-width:1000px){.consent-group{padding:14px 14px 4px}.consent-group .consent{font-size:12px}}
@media(max-width:700px){.consent-group{margin:16px 0 14px;padding:12px 12px 2px}.consent-title{font-size:11.5px}.consent-group .consent{font-size:11.5px;line-height:1.65;gap:9px;margin-bottom:10px}.consent-group .consent input{width:18px;height:18px;margin-top:2px}.consent-note{font-size:11px;padding-left:27px}}

.label-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;margin-bottom:8px}.label-row label{margin:0}.example-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid #ecd3db;background:var(--pink);color:var(--red);border-radius:20px;padding:5px 12px 5px 9px;font-size:11px;font-weight:600;line-height:1.6}.example-btn:hover{background:#f9e6ec}.example-btn svg{width:16px;height:16px}.example-dialog{border:0;border-radius:16px;padding:18px;width:min(520px,92vw);max-height:90vh;overflow:auto;box-shadow:0 20px 60px #0004}.example-dialog::backdrop{background:#000a}.example-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px}.example-head button{border:0;background:#f3f2f2;border-radius:50%;width:32px;height:32px;color:#606064}.example-dialog img{display:block;width:100%;height:auto;border-radius:8px;border:1px solid var(--line)}.example-dialog p{font-size:11px;color:var(--muted);margin:12px 0 0;text-align:center}
