/* NOVA immersive theme • CSS-only light effects. No WebGL or external assets. */
.bcs-nova{--bcs-accent:#67e8f9;--bcs-background:#070d1e;--bcs-nova-lavender:#9a92f9;--bcs-text:#f6f8ff;position:relative;color:var(--bcs-text);background:var(--bcs-background);min-height:100svh;isolation:isolate;overflow:hidden;font-family:Inter,"SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans Thai",Tahoma,sans-serif;}
.bcs-nova:before{content:"";position:absolute;z-index:-5;inset:0;background:radial-gradient(ellipse at 81% 48%,#174fb15e 0,transparent 35%),radial-gradient(ellipse at 97% 0,#45448844 0,transparent 34%),radial-gradient(ellipse at 17% 99%,#1b316152 0,transparent 56%),linear-gradient(125deg,#070b1b 0%,#07112a 45%,#070c20 100%)}
.bcs-nova:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:-3;background:linear-gradient(90deg,#050b1bfe 0%,#050d20df 31%,#07142b40 56%,transparent 100%);}
.bcs-nova .bcs-nova-sky{position:absolute;inset:0;z-index:-4;opacity:.3;background-image:var(--bcs-bg-image,linear-gradient(145deg,#06142b30,#07132900));background-size:cover;background-position:center;}
.bcs-nova-grid{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,#a1d5ff0b 1px,transparent 1px),linear-gradient(#a1d5ff0b 1px,transparent 1px);background-size:92px 92px;mask-image:linear-gradient(90deg,transparent 5%,#000 90%);opacity:.6;}
.bcs-nova-beams{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.bcs-nova-beams span{position:absolute;display:block;width:1px;height:175%;top:-35%;right:29%;transform:rotate(27deg);background:linear-gradient(transparent,#55dfff16,transparent);box-shadow:0 0 45px 18px #5ccaff0d}
.bcs-nova-beams span+span{right:19%;transform:rotate(34deg);opacity:.5}
.bcs-nova-shell{width:min(1590px,100%);min-height:100vh;min-height:100svh;display:flex;flex-direction:column;margin:auto;position:relative;z-index:2;padding:clamp(26px,3.25vw,54px) clamp(24px,5.4vw,95px) 29px;}
.bcs-nova-header,.bcs-nova-footer{display:flex;align-items:center;justify-content:space-between;gap:20px}
.bcs-nova-header{position:relative;z-index:3}
.bcs-nova-wordmark{display:flex;align-items:center;gap:14px;max-width:40vw;font-size:clamp(18px,1.65vw,26px);font-weight:800;letter-spacing:.16em;text-transform:uppercase;overflow-wrap:anywhere}
.bcs-nova-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#a9efff,#3e85ce);color:#05152e;font-size:25px;box-shadow:0 0 28px #58d5f947;flex:0 0 auto}
.bcs-nova-logo{width:auto;max-width:clamp(115px,18vw,230px);max-height:70px;object-fit:contain;object-position:left}
.bcs-nova-header-right{display:flex;align-items:center;gap:17px;color:#c4d5f3a8;letter-spacing:.17em;font-size:10px;font-weight:750}
.bcs-nova-header-line{height:1px;width:45px;background:#8aacd85c}
.bcs-nova-header-index{color:var(--bcs-accent);opacity:.77}
.bcs-nova-main{min-height:540px;display:flex;align-items:center;flex:1;padding:76px 0 90px}
.bcs-nova-content{max-width:min(765px,62%);position:relative;z-index:3;}
.bcs-nova-eyebrow{display:flex;align-items:center;gap:15px;margin-bottom:26px;letter-spacing:.24em;color:var(--bcs-accent);font-size:clamp(9px,.8vw,12px);font-weight:800;text-transform:uppercase;line-height:1.75;}
.bcs-nova-signal{width:27px;height:27px;border:1px solid #55cced80;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;box-shadow:0 0 20px #2dc8ff15}
.bcs-nova-signal i{width:6px;height:6px;border-radius:50%;background:var(--bcs-accent);box-shadow:0 0 12px 3px #56d7fa83}
.bcs-nova-content h1{font-weight:760;font-size:clamp(58px,6.05vw,104px);letter-spacing:-.073em;line-height:1.065;color:#f4f7ff;text-wrap:balance;margin:0 0 27px;overflow-wrap:anywhere;text-shadow:0 8px 32px #01081a70}
.bcs-nova-subtitle{max-width:540px;font-size:clamp(15px,1.19vw,18px);line-height:1.85;color:#aebfdb;margin:0;letter-spacing:.007em}
.bcs-nova-actions{display:flex;align-items:center;flex-wrap:wrap;gap:26px;margin-top:36px}
.bcs-nova-cta{display:inline-flex;min-width:190px;align-items:center;justify-content:space-between;gap:24px;padding:11px 12px 11px 23px;border-radius:12px;color:#061328!important;background:linear-gradient(110deg,var(--bcs-accent),#75bafa);font-size:13px;font-weight:800;letter-spacing:.02em;text-decoration:none;box-shadow:0 10px 45px #1cbdfe36;transition:transform .25s,box-shadow .25s}
.bcs-nova-cta-arrow{height:38px;width:38px;display:grid;place-items:center;border-radius:9px;background:#ffffff60;font-size:20px}
.bcs-nova-cta:hover{transform:translateY(-3px);box-shadow:0 14px 55px #1cbdfe67}
.bcs-nova-contact{display:inline-flex;align-items:center;gap:13px;padding:10px 0;border-bottom:1px solid #b8d2ec80;text-decoration:none;color:#ebf4ff!important;letter-spacing:.13em;font-size:11px;font-weight:750;transition:color .2s}
.bcs-nova-contact:hover{color:var(--bcs-accent)!important}
.bcs-nova-countdown{margin-top:35px;gap:9px}
.bcs-nova-countdown .bcs-countdown-item{min-width:81px;gap:8px;align-items:center;padding:15px 13px 13px;background:linear-gradient(145deg,#ffffff11,#ffffff04);border:1px solid #b4d9ff2c;border-radius:13px;box-shadow:inset 0 1px #ffffff10;backdrop-filter:blur(10px)}
.bcs-nova-countdown .bcs-countdown-item strong{color:#eff8ff;font-weight:750;font-size:clamp(27px,2.5vw,38px);font-variant-numeric:tabular-nums;letter-spacing:-.07em}
.bcs-nova-countdown .bcs-countdown-item span{color:var(--bcs-accent);font-size:9px;letter-spacing:.19em}
.bcs-nova-footer{position:relative;z-index:4;padding-top:24px;border-top:1px solid #d8e8ff2c;color:#9bb0ce;font-size:10px;letter-spacing:.13em;font-weight:600}
.bcs-nova-footer-status{display:flex;align-items:center;gap:11px}
.bcs-nova-footer-status i{width:6px;height:6px;display:inline-block;border-radius:50%;background:#7bfae8;box-shadow:0 0 14px #7bfae8}
.bcs-nova-footer-center{color:#7394ba86}
.bcs-nova-footer-copy{text-align:right}
.bcs-nova-scene{position:absolute;z-index:0;pointer-events:none;width:clamp(570px,55vw,860px);aspect-ratio:1;top:49%;right:clamp(-300px,-8vw,-65px);transform:translateY(-48%);perspective:1000px;}
.bcs-nova-atmosphere{position:absolute;inset:-14%;border-radius:50%;background:radial-gradient(circle,#287ee13a 0%,#0a479d3c 32%,#2931a71a 47%,transparent 68%);filter:blur(23px)}
.bcs-nova-planet{position:absolute;inset:23%;border-radius:50%;overflow:hidden;background:radial-gradient(ellipse at 27% 21%,#c5ffff 0%,#5dd7ff 6%,#318bdf 24%,#16468f 47%,#071d56 67%,#050d31 90%);box-shadow:inset -28px -42px 67px #050923df,inset 13px 15px 35px #b7eaff3d,0 0 33px #3bc0fa67,0 0 115px 23px #2364da4a;transform:rotate(-17deg)}
.bcs-nova-planet:after{content:"";position:absolute;inset:0;border-radius:50%;background:repeating-linear-gradient(175deg,transparent 0px,transparent 20px,#b6e6ff16 21px,#061b6030 25px,transparent 31px);mask-image:radial-gradient(circle,#0007,transparent 74%);}
.bcs-nova-planet-sheen{position:absolute;left:12%;top:7%;width:68%;height:48%;background:radial-gradient(ellipse,#aaf9ff66 0,#4dd8fb21 25%,transparent 72%);transform:rotate(-35deg);filter:blur(10px)}
.bcs-nova-planet-line{position:absolute;inset:13%;border:1px solid #b8eaff24;transform:rotate(-35deg) scaleY(.6);border-radius:50%}
.bcs-nova-orbit{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%) rotate(-27deg) scaleY(.58);border:1px solid #83d9ff69;}
.bcs-orbit-inner{width:82%;height:82%;border-width:2px;box-shadow:0 0 12px #3fc7ff2e,inset 0 0 13px #25a6fa30}
.bcs-orbit-mid{width:104%;height:104%;border-color:#aedbff46;transform:translate(-50%,-50%) rotate(38deg) scaleY(.79)}
.bcs-orbit-outer{width:123%;height:123%;border-color:#ffffff20;transform:translate(-50%,-50%) rotate(-47deg) scaleY(.8)}
.bcs-nova-orbit-dot{position:absolute;width:10px;height:10px;background:#cbfcff;border-radius:50%;box-shadow:0 0 18px 6px #3ed6ff7a}
.bcs-dot-one{top:25%;left:23%}.bcs-dot-two{bottom:20%;right:24%;width:6px;height:6px;background:#c7b7ff;box-shadow:0 0 22px 5px #928dff99}
.bcs-nova-badge{position:absolute;padding:12px 18px;background:linear-gradient(125deg,#0d214fc2,#182c56a3);backdrop-filter:blur(13px);border:1px solid #b0daff38;color:#bcd4f7;border-radius:14px;display:flex;align-items:center;gap:13px;font-size:10px;letter-spacing:.19em;line-height:1.6;box-shadow:0 10px 38px #030b2080}
.bcs-nova-badge strong{color:#f1f8ff;font-size:12px;letter-spacing:.07em}
.bcs-nova-badge-icon{font-size:24px;color:var(--bcs-accent)}
.bcs-nova-badge-top{right:0;top:20%}.bcs-nova-badge-bottom{left:2%;bottom:20%}
.bcs-nova-ring-mini{width:27px;height:27px;border:2px solid #87eaff;border-right-color:transparent;border-radius:50%;box-shadow:0 0 15px #5dd6ff55}
.bcs-nova .bcs-nova-cta:focus-visible,.bcs-nova .bcs-nova-contact:focus-visible{outline:3px solid var(--bcs-accent);outline-offset:5px}
.bcs-nova.bcs-motion-on .bcs-nova-planet{animation:bcs-nova-planet-drift 9s ease-in-out infinite alternate}
.bcs-nova.bcs-motion-on .bcs-orbit-inner{animation:bcs-nova-orbit-in 23s linear infinite}
.bcs-nova.bcs-motion-on .bcs-orbit-mid{animation:bcs-nova-orbit-mid 38s linear infinite}
.bcs-nova.bcs-motion-on .bcs-nova-atmosphere{animation:bcs-nova-glow 6s ease-in-out infinite alternate}
.bcs-nova.bcs-motion-on .bcs-nova-badge{animation:bcs-nova-tag-float 7s ease-in-out infinite alternate}
.bcs-nova.bcs-motion-on .bcs-nova-badge-bottom{animation-delay:-3s}
.bcs-nova.bcs-motion-on .bcs-nova-content{animation:bcs-nova-fade-up .8s ease-out both}
@keyframes bcs-nova-planet-drift{from{transform:rotate(-17deg) translateY(0)}to{transform:rotate(-10deg) translateY(-13px)}}
@keyframes bcs-nova-orbit-in{from{transform:translate(-50%,-50%) rotate(-27deg) scaleY(.58)}to{transform:translate(-50%,-50%) rotate(333deg) scaleY(.58)}}
@keyframes bcs-nova-orbit-mid{from{transform:translate(-50%,-50%) rotate(38deg) scaleY(.79)}to{transform:translate(-50%,-50%) rotate(398deg) scaleY(.79)}}
@keyframes bcs-nova-glow{from{opacity:.65}to{opacity:1}}
@keyframes bcs-nova-tag-float{from{transform:translateY(0)}to{transform:translateY(-14px)}}
@keyframes bcs-nova-fade-up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.bcs-nova-scene{right:calc(50vw - 875px)}}
@media(max-width:1100px){.bcs-nova-content{max-width:66%}.bcs-nova-content h1{font-size:clamp(58px,6.3vw,78px)}.bcs-nova-scene{right:-240px;width:710px;opacity:.84}.bcs-nova-footer-center{display:none}}
@media(max-width:720px){.bcs-nova-shell{padding:22px 24px 24px}.bcs-nova-header-right{gap:8px;font-size:9px}.bcs-nova-header-line,.bcs-nova-header-index{display:none}.bcs-nova-wordmark{font-size:17px;max-width:52vw;gap:8px}.bcs-nova-mark{width:31px;height:31px;font-size:22px}.bcs-nova-main{min-height:690px;align-items:flex-end;padding:220px 0 50px}.bcs-nova-content{max-width:100%}.bcs-nova-content h1{font-size:clamp(45px,10.3vw,68px);line-height:1.08;letter-spacing:-.064em;margin:0 0 17px}.bcs-nova-eyebrow{margin-bottom:20px;font-size:9px;letter-spacing:.13em}.bcs-nova-subtitle{max-width:520px;font-size:15px;line-height:1.76}.bcs-nova:after{background:linear-gradient(0deg,#050c1b 0%,#050c1bf7 22%,#071229b8 52%,transparent 78%)}.bcs-nova-scene{width:min(590px,134vw);top:165px;right:-33%;transform:translateY(-25%);opacity:.80}.bcs-nova-badge{display:none}.bcs-nova-footer{flex-wrap:wrap;font-size:9px;gap:10px;line-height:1.8}.bcs-nova-footer-copy{width:100%;text-align:left;opacity:.6}.bcs-nova-actions{gap:19px;margin-top:26px}.bcs-nova-cta{min-width:173px}.bcs-nova-grid{background-size:66px 66px;}.bcs-nova-countdown{gap:6px;margin-top:26px}.bcs-nova-countdown .bcs-countdown-item{min-width:0;flex:1;padding:13px 4px 12px}.bcs-nova-countdown .bcs-countdown-item strong{font-size:clamp(25px,6vw,34px)}.bcs-nova-countdown .bcs-countdown-item span{font-size:8px;letter-spacing:.10em}}
@media(max-width:380px){.bcs-nova-shell{padding-left:18px;padding-right:18px}.bcs-nova-content h1{font-size:43px}.bcs-nova-main{padding-top:185px;min-height:640px}.bcs-nova-scene{top:115px;right:-40%}.bcs-nova-actions{gap:10px}}
@media(prefers-reduced-motion:reduce){.bcs-nova *,.bcs-nova *::before,.bcs-nova *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep typography readable over the scene on small screens. */
@media(max-width:720px){.bcs-nova:after{z-index:1;pointer-events:none}}

/* v1.2 opt-in photo wallpaper: preserve v1.1 default NOVA scene */
.bcs-nova.bcs-photo-bg .bcs-nova-sky{opacity:.82;filter:brightness(.8) saturate(1.12)}
.bcs-nova.bcs-photo-bg:after{background:linear-gradient(90deg,#061126ed 0%,#051124ac 44%,#06142d43 90%);z-index:1;pointer-events:none}

/* Photographic detail when NOVA photo mode is enabled. */
.bcs-nova.bcs-photo-bg .bcs-nova-sky{opacity:.90;background-position:center center;filter:saturate(1.04) contrast(1.03)}
.bcs-nova.bcs-photo-bg:before{background:radial-gradient(ellipse at 84% 43%,#126cc745 0,transparent 52%),linear-gradient(120deg,#03091680,#04132e1c 65%,#06112b4a)}
.bcs-nova.bcs-photo-bg:after{background:linear-gradient(90deg,#020a19f5 0%,#061125cb 36%,#06142b48 65%,#06142b30 100%)}
@media(max-width:700px){.bcs-nova.bcs-photo-bg:after{background:linear-gradient(0deg,#051128bd,#051128b3)}}

.bcs-nova-countdown + .bcs-nova-actions{margin-top:14px} .bcs-nova-content .bcs-countdown-heading{color:#b8f0ff}

/* v1.3.1 - actual website domain in NOVA wordmark, with or without a custom logo. */
.bcs-nova-wordmark .bcs-domain-name{min-width:0;overflow-wrap:anywhere;letter-spacing:.055em;text-transform:none;line-height:1.25}
.bcs-nova-wordmark .bcs-nova-logo{max-width:min(150px,15vw);max-height:54px;flex-shrink:1}
@media(max-width:720px){.bcs-nova-wordmark{max-width:72vw;font-size:clamp(12px,3.35vw,17px)}.bcs-nova-wordmark .bcs-nova-logo{max-width:65px;max-height:36px}.bcs-nova-header-right{flex-shrink:0;font-size:8px}}

/* v1.3.2 responsive, Thai-safe heading sizing */
.bcs-nova-content{min-width:0}
.bcs-nova-content h1.bcs-headline{max-width:100%;font-size:clamp(22px,var(--bcs-h1-fluid,5.75vw),var(--bcs-h1-max,88px));overflow-wrap:anywhere;word-break:normal;hyphens:auto;line-height:1.15}
.bcs-nova-content h1.bcs-headline--thai{letter-spacing:-.015em;line-height:1.27;text-wrap:pretty}
@media(max-width:1100px){.bcs-nova-content h1.bcs-headline{font-size:clamp(22px,5vw,var(--bcs-h1-max,88px))}}
@media(max-width:720px){.bcs-nova-content h1.bcs-headline{font-size:clamp(21px,var(--bcs-h1-mobile-fluid,9vw),min(var(--bcs-h1-max,88px),var(--bcs-h1-mobile-max,42px)));line-height:1.26}}
