body[data-theme=dusk]{--paper:#100e12;--ink:#eee1cd;--muted:#b7a7a1;--line:#3b3038;--accent:#d6b483;background:#100e12}.review{background:#100e12;color:#ae9993;border-bottom:1px solid #ffffff12;height:35px;padding:0 4%;font-size:8px}.review-label{max-width:none;letter-spacing:.19em;font-size:8px}.review .motion{font-size:9px;min-height:30px}header{position:absolute;top:35px;left:0;width:100%;z-index:7;background:linear-gradient(#100e1270,transparent);border:0;padding:28px 5%}.brand{font-size:26px}.nav{font-size:10px;gap:30px}.nav a{opacity:.8;transition:opacity .3s}.nav a:hover{opacity:1}.immersive-sequence{height:300vh}.scene-stage{height:100svh;min-height:650px}.scene-copy{left:7%;top:25%;width:60%}body[data-theme=dusk] .scene-copy h1{font-size:clamp(57px,6.4vw,105px);line-height:.96;letter-spacing:-.055em;margin:27px 0}.scene-copy .eyebrow{color:#d3bb9c;font-size:9px;letter-spacing:.25em}.scene-copy p{font-size:12px!important;max-width:300px;color:#d0beb2!important}.scene-shade{background:linear-gradient(90deg,#100e12e8 0%,#100e12aa 29%,#100e121c 60%,transparent 100%)!important}.enter-gallery{margin-top:27px;font-size:11px;display:inline-flex;align-items:center;gap:40px;border:1px solid #c4a97f99;padding:17px 23px;border-radius:100px;background:#241b2080;backdrop-filter:blur(12px);transition:background .4s,box-shadow .4s}.enter-gallery:hover{background:#baa17a;color:#1b1216;box-shadow:0 0 30px #c7a57630}.enter-gallery span{font-size:20px}.skip-scene{display:inline-block;font-size:10px;margin-left:24px;border-bottom:1px solid #9a837555;padding:12px 0}.scene-bottom{bottom:24px;color:#b49f90}.scene-bottom .scene-label{font-size:20px;color:#e7d7c2}.scene-bottom .scene-tech{font-size:8px;letter-spacing:.16em}.scene-chapter{bottom:19%;left:7%;width:65%;text-shadow:0 2px 35px #000!important}.scene-chapter h2{font-size:clamp(55px,6.7vw,95px)}.scene-chapter .eyebrow{color:#d1b591}.spatial-tip{position:absolute;pointer-events:none;z-index:8;padding:10px 14px;border-radius:100px;border:1px solid #e9d3a850;background:#17101add;backdrop-filter:blur(12px);font-size:10px;color:#eedcc3;opacity:0;transition:opacity .2s;max-width:180px}.chapter-index{display:grid;grid-template-columns:repeat(4,1fr);padding:32px 6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:20px;background:#171218;position:relative;z-index:4}.chapter-index a{font-size:10px;letter-spacing:.04em;color:#c5b3a8;display:flex;align-items:center;gap:20px}.chapter-index b{font-size:8px;font-weight:400;color:#957d70}.chapter-index a:hover{color:#ffe8c0}.chapter{padding:115px 7%;border-top:0}.section-head .eyebrow,.services .eyebrow,.intro .eyebrow,.destinations .eyebrow,.enquiry .eyebrow{font-size:9px;letter-spacing:.23em;color:#ac907b}.section-head h2{font-size:clamp(65px,8vw,110px)}.section-head{margin-bottom:40px!important}.section-head>.link-btn{font-size:10px;color:#ad998a;border-color:#5a4439}.gallery-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;color:#9e8880;font-size:8px;letter-spacing:.14em}.gallery-controls b{color:#e6caa4;font-weight:400}.gallery-controls button{width:44px;height:44px;border:1px solid #604d43;border-radius:50%;margin-left:10px;font-size:19px;transition:background .3s}.gallery-controls button:hover{background:#3c2b28}.gallery{display:flex!important;gap:32px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 0 30px;perspective:none!important;position:relative}.gallery::-webkit-scrollbar{display:none}.gallery .wedding:nth-child(n){flex:0 0 68%;margin:0;scroll-snap-align:start;position:relative;transform:none!important}.gallery .wedding figure{height:510px;border-radius:3px!important;overflow:hidden;position:relative}.gallery .wedding figure:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 70px #180f1220;pointer-events:none}.gallery .wedding:nth-child(2) figure{border-radius:3px!important}.gallery .wedding h3{font-size:44px;margin:25px 0 10px}.gallery .wedding p{font-size:9px}.gallery .wedding .credit{font-size:9px;color:#8f7c76}.story-open{position:absolute;right:0;bottom:15px;font-size:10px;border-bottom:1px solid #846954;padding-bottom:10px}.story-open span{margin-left:25px}.dusk .intro{max-width:none;background:#191419;padding:110px 10%;gap:13%;border-block:1px solid #31252c}.intro h2{font-size:clamp(50px,5vw,76px)}.intro p{font-size:13px}.stats{border-top:1px solid #483830}.stats strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:65px;color:#d6ba92}.stats span{font-size:9px}.services{gap:10%;padding-top:130px;padding-bottom:130px}.service-photo{height:640px;position:relative}.service-photo:before{content:'';position:absolute;inset:-17px 17px 17px -17px;border:1px solid #705643;z-index:-1}.service-photo img{transition:opacity .5s,transform 1s;border-radius:200px 200px 0 0}.services h2{font-size:clamp(45px,4.8vw,72px);margin:20px 0 40px}.services details{padding:24px 0}.services summary{font-size:31px}.services details p{font-size:12px;max-width:360px}.destinations{background:#ded9c9;color:#26372f;padding:100px 8%}.destinations h2{font-size:90px}.destinations .eyebrow{color:#647565}.destination-tabs button{border-color:#94a18f}.destination-tabs button[aria-pressed=true]{background:#283e35;color:#ebe7db}.destination-scene{gap:9%;margin-top:50px;grid-template-columns:1.2fr 1fr}.destination-scene figure{height:450px;border-radius:0}.destination-scene h3{font-size:76px}.destination-scene p{font-size:13px}.destinations .link-btn{border-color:#71816d}.destinations .image-caption{font-size:10px;color:#56674f}.dusk .quote{background:radial-gradient(ellipse at 50% 60%,#302027,#100e12 75%);padding:135px 15%}.quote blockquote{font-size:clamp(38px,4.5vw,65px);color:#e7d8c3}.quote small{color:#997d6e}.journal-grid{gap:65px}.journal-card{border-color:#634a40}.journal-card small{color:#997f70;font-size:8px}.journal-card h3{font-size:40px;line-height:1.18}.journal-card>span{font-size:10px;color:#b19a83}.enquiry{background:radial-gradient(ellipse at 0 100%,#35232d,#181218 70%);gap:12%;border-top:1px solid #463339}.enquiry h2{font-size:70px}.enquiry p{font-size:13px}.enquiry label{font-size:10px;color:#cbb8a4}.enquiry input,.enquiry textarea,.enquiry select{font-size:13px;border-color:#635044}.form-submit{border-radius:100px;background:#d8b892;color:#21171b;font-size:11px;padding:18px 28px}.preview-note{color:#ad9890!important}.form-status{color:#dec7a8}footer{padding:55px 6%;background:#0b090d;align-items:center;border-color:#34252c}footer p{font-size:10px;color:#c5ae9a}footer p span{font-size:9px;color:#7d6863}footer>a:last-child{font-size:10px}dialog{background:#171118;box-shadow:0 20px 100px #000b;width:min(1080px,94vw);border:1px solid #5b453b;border-radius:3px}.dialog-content{grid-template-columns:1.1fr 1fr}.dialog-content img{height:640px}.dialog-copy{padding:70px 45px;align-self:center}.dialog-copy h2{font-size:60px}.close{border:1px solid #856a4f;border-radius:100px;background:#1b121bea;padding:10px 17px;font-size:10px}.no-webgl .scene-fallback{background:linear-gradient(90deg,#100e12ef,#100e1240),url('assets/pragati-79.jpg') center/cover}.no-webgl .enter-gallery{display:none}.no-webgl:after{content:'Static preview — 3D unavailable on this browser';position:absolute;bottom:10px;left:7%;font-size:10px;color:#cfbda6}
@media(max-width:800px){.review{height:auto;min-height:34px}.review-label{flex-basis:auto}.scene-copy{width:75%!important;top:25%}body[data-theme=dusk] .scene-copy h1{font-size:64px}.nav{gap:17px}.scene-copy p{max-width:280px}.scene-bottom .scene-tech{display:none}.chapter-index{padding:25px 6%;gap:12px}.chapter-index a{gap:8px;font-size:9px}.gallery .wedding:nth-child(n){flex-basis:83%}.gallery .wedding figure{height:430px}.story-open{position:static;display:inline-block;margin-top:18px}.services{gap:45px}.service-photo{height:480px}.chapter{padding:75px 7%}.destinations h2{font-size:70px}.destination-scene h3{font-size:58px}.enquiry h2{font-size:60px}.dialog-content img{height:470px}.dialog-copy{padding:45px 25px}.dialog-copy h2{font-size:45px}}@media(max-width:540px){header{top:34px;padding:22px 6%}.brand{font-size:23px}.review{padding:3px 5%;gap:2px}.review-label{font-size:7px;letter-spacing:.08em}.review .motion{font-size:8px}.nav{background:#171119f5;backdrop-filter:blur(18px);top:85%;border:1px solid #4b3936;left:5%;right:5%;border-radius:3px}.menu{font-size:9px;padding:9px 13px;border-radius:40px;border-color:#816952}.scene-stage{min-height:680px}.scene-copy{top:22%;left:7%;width:87%!important}body[data-theme=dusk] .scene-copy h1{font-size:48px;line-height:1.02;letter-spacing:-.04em}.scene-copy p{font-size:11px!important;max-width:230px}.scene-copy .eyebrow{font-size:8px}.enter-gallery{font-size:10px;padding:13px 18px;gap:22px;margin-top:20px}.skip-scene{font-size:9px;margin-left:0;display:block;width:fit-content;margin-top:7px}.scene-bottom{bottom:20px}.scene-label{font-size:16px!important}.scene-bottom>div{max-width:57%}.scene-chapter{width:84%;bottom:23%}.scene-chapter h2{font-size:48px}.chapter-index{grid-template-columns:1fr 1fr;gap:22px 15px}.section-head h2{font-size:66px}.chapter{padding:65px 7%}.gallery .wedding:nth-child(n){flex-basis:92%}.gallery .wedding figure{height:370px}.gallery .wedding h3{font-size:35px}.gallery{gap:18px}.gallery-controls{font-size:7px}.gallery-controls button{width:40px;height:40px}.intro h2{font-size:51px}.dusk .intro{padding:70px 8%}.services h2{font-size:49px}.service-photo{height:430px}.services summary{font-size:29px}.destinations h2{font-size:61px}.destination-scene{grid-template-columns:1fr;gap:35px}.destination-scene figure{height:350px}.destination-scene h3{font-size:60px}.dusk .quote{padding:85px 9%}.journal-grid{gap:25px}.journal-card h3{font-size:34px}.enquiry h2{font-size:58px}.enquiry input,.enquiry select,.enquiry textarea{font-size:16px}.dialog-content{grid-template-columns:1fr}.dialog-content img{height:320px}.dialog-copy{padding:30px}.dialog-copy h2{font-size:44px}footer{align-items:flex-start;padding:45px 8%}}

/* Motion preferences and layout stability */
body[data-theme=dusk] .immersive-sequence.reduced-scene,body[data-theme=dusk] .immersive-sequence.no-webgl{height:100svh;min-height:680px}
body[data-theme=dusk]:not(.js-motion) .explore-scene span{animation:none}
html:has(body[data-theme=dusk]:not(.js-motion)){scroll-behavior:auto}
body[data-theme=dusk] .scene-chapter{transition:none}
body[data-theme=dusk] .gallery .wedding{min-width:0}
body[data-theme=dusk] .chapter-index .current{color:#f9dfb7}
@media(min-width:1600px){body[data-theme=dusk] main{max-width:none}body[data-theme=dusk] .immersive-sequence{margin:0}}
@media(max-width:540px){body[data-theme=dusk] header{position:absolute}.scene-bottom .explore-scene{max-width:42%}.gallery .wedding p{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){body[data-theme=dusk] .immersive-sequence{height:100svh;min-height:680px}}

body[data-theme=dusk] .scene-chapter{width:48%;padding:28px 32px;border-left:1px solid #e3c59c60;background:linear-gradient(100deg,#130e17da,#130e1730);backdrop-filter:blur(8px);border-radius:0 12px 12px 0}
body[data-theme=dusk] .scene-chapter h2{font-size:clamp(44px,5vw,76px);margin:20px 0}
body[data-theme=dusk] .scene-chapter p{line-height:1.8;color:#e6d8c6}
@media(max-width:650px){body[data-theme=dusk] .scene-chapter{width:85%;left:7%;padding:22px}body[data-theme=dusk] .scene-chapter h2{font-size:43px}}

.dusk .gallery .wedding:nth-child(n){margin:0}


/* Generated cinematic winterline panorama replaces the architectural backdrop. */
body[data-theme=dusk] .scene-fallback,body[data-theme=dusk] .no-webgl .scene-fallback{background:url('assets/dusk-winterline-valley.png') center center/cover no-repeat;transform:scale(1.07);will-change:transform}
body[data-theme=dusk] .scene-shade{background:linear-gradient(90deg,#161321b5 0%,#1d172855 37%,transparent 75%),linear-gradient(0deg,#11101d6b,transparent 45%)!important}
body[data-theme=dusk] header{background:linear-gradient(#17142090,transparent)}
body[data-theme=dusk] .scene-copy h1{text-shadow:0 2px 35px #17122160}
@media(max-width:540px){body[data-theme=dusk] .scene-fallback{background-position:61% center}body[data-theme=dusk] .scene-shade{background:linear-gradient(90deg,#161321b0,#16132130),linear-gradient(0deg,#11101d70,transparent 50%)!important}}

/* Cinematic Dehradun valley direction — generated landscape, real wedding photographs. */
body[data-theme=dusk] .scene-fallback{background:url('assets/dehradun-winterline-v1.png') center center/cover no-repeat;will-change:transform;transform:scale(1.04)}
body[data-theme=dusk] .scene-shade{background:linear-gradient(90deg,#201e34b8 0%,#27213770 30%,#2520330a 65%),linear-gradient(0deg,#20172880,transparent 45%)!important}
body[data-theme=dusk] .scene-copy p{color:#f3e8e0!important;text-shadow:0 1px 10px #1a1727}
body[data-theme=dusk] header{background:linear-gradient(#25203380,transparent)}
body[data-theme=dusk] .scene-bottom{color:#eee0d4;text-shadow:0 1px 10px #302339}
body[data-theme=dusk] .scene-copy .eyebrow{color:#ffe6c7}
body[data-theme=dusk] .scene-chapter{background:linear-gradient(100deg,#292031d9,#2920315c)}
@media(max-width:650px){body[data-theme=dusk] .scene-fallback{background-position:57% center}}
/* About introduction — blush and warm gold drawn from the Instagram brand mark. */
body[data-theme=dusk] .dusk #about{position:relative;isolation:isolate;overflow:hidden;max-width:none;padding:130px 10%;color:#59433f;border-block:1px solid #d7b8a8;background:radial-gradient(ellipse at 5% 0%,#fff7ee 0%,transparent 48%),radial-gradient(ellipse at 100% 80%,#e9bac366 0%,transparent 60%),linear-gradient(120deg,#f6e7df,#f2dadd 55%,#f8ebe1)}
body[data-theme=dusk] #about:before{content:'';position:absolute;inset:24px;border:1px solid #b99b7060;z-index:-1;pointer-events:none}
body[data-theme=dusk] #about:after{content:'';position:absolute;width:850px;height:850px;right:-390px;top:-440px;border:1px solid #b5966650;border-radius:50%;box-shadow:0 0 0 40px #d8bfa012,0 0 0 80px #d8bfa009;z-index:-1;pointer-events:none}
body[data-theme=dusk] #about .eyebrow{color:#93734f}
body[data-theme=dusk] #about h2{color:#674740}
body[data-theme=dusk] #about p{color:#725c55;font-size:14px;line-height:1.95}
body[data-theme=dusk] #about .stats{border-color:#c9aa90}
body[data-theme=dusk] #about .stats strong{color:#997344}
body[data-theme=dusk] #about .stats span{color:#795f54}
@media(max-width:650px){body[data-theme=dusk] .dusk #about{padding:85px 9%}body[data-theme=dusk] #about:before{inset:15px}}
