:root{--ink:#0b0b0b;--cream:#fff8e6;--paper:#fffdfa;--terra:#d58a00;--terra2:#a86700;--muted:#625d52;--line:rgba(0,0,0,.15);--shadow:0 24px 70px rgba(0,0,0,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Manrope",system-ui,sans-serif;line-height:1.6}a{color:inherit}button,input,select,textarea{font:inherit}.en{display:none}html[data-lang="en"] .vi{display:none}html[data-lang="en"] .en{display:initial}.topbar{height:82px;padding:0 max(22px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(255,248,230,.95);backdrop-filter:blur(14px);position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.16em;line-height:1.2}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--terra);border-radius:50% 50% 43% 57%;color:var(--terra);font:italic 21px "Manrope",sans-serif}.brand small{display:block;margin-top:3px;color:var(--terra);font-size:8px;letter-spacing:.27em}.desktop-nav{display:flex;align-items:center;gap:21px}.desktop-nav a{text-decoration:none;font-size:11px;font-weight:700}.desktop-nav a:hover,.desktop-nav a.active{color:var(--terra)}.header-tools{display:flex;align-items:center;gap:9px}.lang-toggle{display:flex;padding:3px;border:1px solid var(--line);border-radius:999px}.lang-toggle button{padding:5px 8px;border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;font-size:10px;font-weight:700}.lang-toggle button.active{background:var(--ink);color:#fff}.menu-btn{display:none;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:transparent}.mobile-nav{display:none}.hero{min-height:680px;padding:86px max(24px,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:80px}.home-hero,.page-hero{background:linear-gradient(110deg,#fffaf0,#f7d878)}.kicker{margin:0 0 18px;color:var(--terra);font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.hero h1,h2{margin:0;font-family:"Manrope",Arial,sans-serif;font-weight:600;line-height:1.02;letter-spacing:-.035em}.hero h1{font-size:clamp(56px,7vw,94px)}h2{font-size:clamp(39px,4.7vw,63px)}em{color:var(--terra);font-weight:600}.hero-copy>p:not(.kicker){max-width:590px;margin:25px 0;color:var(--muted);font-size:17px}.actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px}.btn{min-height:50px;padding:13px 20px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:999px;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.06em;transition:.2s}.btn:hover{transform:translateY(-2px)}.primary{background:#0b0b0b;color:#f2ad24;box-shadow:0 12px 30px rgba(0,0,0,.22)}.secondary{border-color:var(--line);background:rgba(255,255,255,.45)}.visual{position:relative;min-height:430px;display:grid;place-items:center;overflow:hidden;border-radius:220px 220px 26px 26px;background:linear-gradient(155deg,#ffd96b,#e9a31b);box-shadow:var(--shadow)}.sun{position:absolute;top:80px;right:40px;width:160px;height:160px;border-radius:50%;background:rgba(255,231,180,.75)}.arch-art{position:absolute;inset:70px 45px 0;display:grid;place-content:center;text-align:center;border:20px solid rgba(255,250,241,.82);border-bottom:0;border-radius:180px 180px 0 0;background:linear-gradient(#f7d56c 0 45%,#efa924 45% 59%,#171717 59%)}.arch-art span,.gallery-placeholder span,.image-placeholder span{z-index:2;padding:8px 12px;border-radius:999px;background:rgba(255,253,249,.86);color:#76533f;font-size:11px;font-weight:700;letter-spacing:.12em}.arch-art small,.gallery-placeholder small,.image-placeholder small{z-index:2;display:block;margin-top:7px;color:#fff;font-size:11px}.section{padding:96px max(24px,calc((100vw - 1180px)/2));background:var(--paper)}.section-head{margin-bottom:42px;display:grid;grid-template-columns:1fr .75fr;align-items:end;gap:70px}.section-head>p{margin:0;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.service-card{min-height:310px;padding:24px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;text-decoration:none;background:#ffe29a;transition:.22s}.service-card:nth-child(2){background:#f4b52d}.service-card:nth-child(3){background:#fff0c8}.service-card:nth-child(4){background:#171717;color:#fff}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card>b{color:var(--muted);font:italic 15px "Manrope",sans-serif}.service-card .icon{margin:auto 0;font-size:47px;color:var(--terra)}.service-card h3{margin:0 0 8px;font:600 22px "Manrope",sans-serif}.service-card p{margin:0;color:var(--muted);font-size:12px}.service-card i{margin-top:19px;color:var(--terra)}.story{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:88px;background:#101010;color:#fff}.gallery-placeholder{min-height:520px;border-radius:24px;background:linear-gradient(135deg,#171717,#e9a31b)}.story-copy ul{padding:0;margin:32px 0;list-style:none}.story-copy li{padding:16px 0;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line)}.story-copy li span{color:var(--terra);font:italic 17px "Manrope",sans-serif}.truth-note{color:var(--muted);font-size:11px}.cta{padding:96px 24px;text-align:center;background:#f0aa22;color:#0b0b0b}.cta .kicker{color:#0b0b0b}.cta h2{margin-bottom:32px}.light{background:#0b0b0b;color:#f0aa22}.page-hero{min-height:470px}.page-hero .visual{min-height:320px}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.info-box{padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff}.info-box h3,form h3{margin:9px 0 12px;font:600 25px "Manrope",sans-serif}.info-box p{color:var(--muted)}.label{display:inline-block;padding:5px 9px;border-radius:999px;background:#ffe39a;color:#6f4700;font-size:9px;font-weight:700}.details{margin:18px 0 0;padding:0;list-style:none}.details li{padding:10px 0;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font-size:13px}.needed{color:#9a6200;font-weight:700}.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.image-placeholder{min-height:270px;display:grid;place-content:center;text-align:center;border-radius:16px;background:linear-gradient(145deg,#ffd65d,#d68a00)}.image-placeholder:nth-child(2n){background:linear-gradient(145deg,#3b3b3b,#0b0b0b)}.contact-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px}.contact-list{padding:0;list-style:none}.contact-list li{padding:15px 0;border-bottom:1px solid var(--line)}.contact-list small{display:block;color:var(--muted)}.contact-list a{text-decoration:none;font-weight:700}form{padding:30px;border-radius:20px;background:#fff;box-shadow:var(--shadow)}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;margin-bottom:15px;font-size:12px;font-weight:700}input,select,textarea{width:100%;margin-top:6px;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fcfaf6;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--terra);box-shadow:0 0 0 3px rgba(149,82,53,.1)}.check{display:flex;gap:9px;align-items:flex-start;color:var(--muted);font-weight:500}.check input{width:18px;margin:2px 0 0;accent-color:var(--terra)}.form-note,.success{margin-top:12px;padding:12px;border-radius:10px;background:#f2eee7;color:var(--muted);font-size:11px}.success{background:#edf3e8;color:#42533f}.map{width:100%;min-height:380px;border:0;border-radius:20px;filter:sepia(.15)}footer{padding:32px max(22px,calc((100vw - 1180px)/2));display:flex;justify-content:space-between;gap:24px;align-items:center;background:#0b0b0b;color:rgba(255,255,255,.68);font-size:11px}footer .brand{color:#fff}footer a{color:#f0aa22}.footer-links{display:flex;gap:18px}.source-note{font-size:10px}
@media(max-width:980px){.desktop-nav{display:none}.menu-btn{display:block}.mobile-nav.open{position:fixed;z-index:29;top:82px;left:0;right:0;padding:22px;display:grid;gap:8px;background:var(--paper);box-shadow:0 18px 40px rgba(30,20,15,.12)}.mobile-nav a{padding:10px;text-decoration:none;font-weight:700}.hero{grid-template-columns:1fr;gap:45px}.hero .visual{max-width:560px;width:100%}.section-head,.story,.contact-wrap{grid-template-columns:1fr;gap:38px}.service-grid,.album-grid{grid-template-columns:1fr 1fr}.content-grid{grid-template-columns:1fr}}
@media(max-width:600px){.topbar{height:72px;padding:0 16px}.mobile-nav.open{top:72px}.brand{font-size:10px}.brand-mark{width:31px;height:31px}.hero{min-height:auto;padding:64px 20px}.hero h1{font-size:clamp(48px,15vw,66px)}.hero-copy>p:not(.kicker){font-size:15px}.actions{flex-direction:column}.btn{width:100%}.visual{min-height:350px}.arch-art{inset:55px 30px 0;border-width:14px}.section{padding:68px 20px}.service-grid,.album-grid{grid-template-columns:1fr}.service-card{min-height:245px}.story{gap:35px}.gallery-placeholder{min-height:390px}.row{grid-template-columns:1fr;gap:0}form{padding:22px 18px}footer{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap}}
.brand-logo{width:38px;height:38px;border-radius:9px;object-fit:cover}.cover-visual{grid-column:1/-1;margin:10px 0 0;overflow:hidden;border-radius:24px;background:#eeaa23;box-shadow:var(--shadow)}.cover-visual img{display:block;width:100%;height:auto}.cover-visual figcaption{padding:9px 14px;background:#0b0b0b;color:rgba(255,255,255,.68);font-size:10px;text-align:center}.home-hero{grid-template-columns:1fr;padding-top:66px}.home-hero .hero-copy{max-width:820px}.home-hero .hero-copy>p:not(.kicker){max-width:650px}@media(max-width:600px){.cover-visual{border-radius:14px;margin-top:4px}.cover-visual img{min-height:180px;object-fit:cover;object-position:center}.brand-logo{width:34px;height:34px}}

/* Doli House yellow and black brand theme */
.story .story-copy p,.story .truth-note{color:#cfcfcf}
.story .story-copy li{border-bottom-color:rgba(255,255,255,.16)}
.story .story-copy li span,.story .story-copy em{color:#f0aa22}
.story .info-box{color:#0b0b0b}
.service-card:nth-child(4) p,.service-card:nth-child(4) b{color:#d6d6d6}
.service-card:nth-child(4) .icon,.service-card:nth-child(4) i{color:#f0aa22}
.secondary:hover{background:#f4b52d;color:#0b0b0b}
.topbar{box-shadow:0 5px 22px rgba(0,0,0,.05)}
.map-wrap{position:relative}.map-wrap .map{display:block;height:100%}.map-open{position:absolute;left:18px;bottom:18px;z-index:2;padding:10px 15px;border-radius:999px;background:#0b0b0b;color:#f0aa22;text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.07em;box-shadow:0 9px 24px rgba(0,0,0,.25)}
.category-section{background:#fff8e6}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.category-card{overflow:hidden;border:1px solid rgba(0,0,0,.15);border-radius:18px;background:#fff;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.06);transition:transform .2s ease,box-shadow .2s ease}.category-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(0,0,0,.13)}.category-art{position:relative;aspect-ratio:4/3;padding:18px;display:flex;align-items:flex-end;justify-content:space-between;background:linear-gradient(145deg,#ffd65d,#d58a00);color:#0b0b0b}.category-card:nth-child(2n) .category-art{background:linear-gradient(145deg,#242424,#050505);color:#f0aa22}.category-art::after{content:"";position:absolute;right:-28px;top:-35px;width:120px;height:120px;border:22px solid currentColor;border-radius:50%;opacity:.12}.category-art b{font:italic 19px "Manrope",sans-serif}.category-art span{font-size:10px;font-weight:700;letter-spacing:.16em}.category-card h3{margin:18px 18px 6px;font:600 21px "Manrope",sans-serif;line-height:1.2}.category-card small{display:block;margin:0 18px 20px;color:#756f63;font-size:10px}.packages-section{background:#fffdfa}
@media(max-width:980px){.category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.category-grid{grid-template-columns:1fr 1fr;gap:10px}.category-card{border-radius:14px}.category-card h3{margin:13px 13px 5px;font-size:17px}.category-card small{margin:0 13px 15px}.category-art{padding:13px}.category-art span{font-size:8px}}

/* Photoshoot selection and consultation flow */
[hidden]{display:none!important}
.service-visual{position:relative;min-height:410px;margin:0;overflow:hidden;border-radius:220px 220px 26px 26px;background:#0b0b0b;box-shadow:var(--shadow)}
.service-visual img{width:100%;height:100%;min-height:410px;display:block;object-fit:cover;object-position:center}
.service-visual figcaption{position:absolute;right:18px;bottom:18px;padding:9px 13px;border-radius:999px;background:rgba(11,11,11,.88);color:#f0aa22;font-size:10px;font-weight:700;letter-spacing:.06em}
.photo-hero{min-height:610px}
.booking-process{background:#101010;color:#fff}
.booking-process .section-head>p{color:#cfcfcf}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.step-card{min-height:250px;padding:28px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:linear-gradient(145deg,#191919,#0d0d0d)}
.step-card>b{display:inline-grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#f0aa22;color:#0b0b0b;font:600 15px "Manrope",sans-serif}
.step-card h3{margin:48px 0 10px;font:600 25px "Manrope",sans-serif}
.step-card p{margin:0;color:#cfcfcf}
.center-actions{margin-top:32px;display:flex;flex-wrap:wrap;justify-content:center;gap:11px}
.booking-process .secondary{border-color:rgba(255,255,255,.28);color:#fff;background:transparent}
.booking-process .secondary:hover{background:#f0aa22;color:#0b0b0b}
.form-intro{margin:-2px 0 24px;color:var(--muted);font-size:14px}
.success-actions{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.mini-action{min-height:37px;padding:8px 12px;border:1px solid #0b0b0b;border-radius:999px;background:transparent;color:#0b0b0b;text-decoration:none;cursor:pointer;font-size:9px;font-weight:700;letter-spacing:.06em}
.mini-action.dark{background:#0b0b0b;color:#f0aa22}
.clear-action{width:37px;height:37px;margin-left:auto;border:0;border-radius:50%;background:rgba(0,0,0,.08);cursor:pointer;font-size:20px}
#copy-status{display:block;margin-top:10px;color:#42533f;font-size:11px}
.category-card:focus-visible,.btn:focus-visible,.mini-action:focus-visible,.clear-action:focus-visible,.menu-btn:focus-visible,.lang-toggle button:focus-visible{outline:3px solid #f0aa22;outline-offset:3px}
.contact-hero .map-wrap{min-height:380px}
@media(max-width:980px){.process-grid{grid-template-columns:1fr}.service-visual{max-width:700px;width:100%;border-radius:26px}.service-visual img{min-height:330px}.photo-hero{min-height:auto}}
@media(max-width:600px){.service-visual,.service-visual img{min-height:270px}.service-visual figcaption{right:12px;bottom:12px}.process-grid{gap:10px}.step-card{min-height:210px;padding:22px}.step-card h3{margin-top:34px}.center-actions{flex-direction:column}.success-actions{align-items:stretch}.mini-action{display:inline-flex;align-items:center;justify-content:center}.clear-action{margin-left:0}}

/* Dress collection search */
.outfit-categories{background:#101010;color:#fff}
.outfit-categories .section-head>p{color:#cfcfcf}
.outfit-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.outfit-category-card{min-height:220px;padding:25px;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:linear-gradient(145deg,#1d1d1d,#0d0d0d)}
.outfit-category-card:nth-child(3n+2){border-color:#f0aa22;background:#f0aa22;color:#0b0b0b}
.outfit-category-top{display:flex;align-items:center;justify-content:space-between;gap:14px}
.outfit-category-top>span{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#f0aa22;color:#0b0b0b;font:600 14px "Manrope",sans-serif}
.outfit-category-card:nth-child(3n+2) .outfit-category-top>span{background:#0b0b0b;color:#f0aa22}
.outfit-category-top small{color:#f0aa22;font-size:10px;font-weight:700;letter-spacing:.12em;text-align:right}
.outfit-category-card:nth-child(3n+2) .outfit-category-top small{color:#0b0b0b}
.outfit-category-card h3{margin:36px 0 9px;font:600 27px "Manrope",sans-serif;line-height:1.15}
.outfit-category-card p{margin:0;color:#cfcfcf;font-size:14px}
.outfit-category-card:nth-child(3n+2) p{color:#241a08}
.outfit-subcategories{margin-top:auto;padding-top:24px;display:flex;flex-wrap:wrap;gap:8px}
.outfit-subcategories>span{padding:7px 11px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;font-size:13px;font-weight:700}
.outfit-category-card:nth-child(3n+2) .outfit-subcategories>span{border-color:rgba(0,0,0,.35);color:#0b0b0b}
.outfit-categories .center-actions{margin-top:28px}
@media(max-width:980px){.outfit-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.outfit-category-grid{grid-template-columns:1fr}.outfit-category-card{min-height:190px;padding:22px}.outfit-category-card h3{margin-top:28px;font-size:25px}}
.dress-collection{background:#fffdfa}
.dress-search-panel{margin:0 0 34px;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff8e6;box-shadow:0 15px 40px rgba(0,0,0,.07)}
.dress-search-label{margin:0 0 10px;font-size:14px;font-weight:700}
.dress-search-control{position:relative}
.dress-search-control input{height:56px;margin:0;padding:14px 54px 14px 17px;border-color:rgba(0,0,0,.22);border-radius:14px;background:#fff;font-size:16px}
.dress-search-clear{position:absolute;top:8px;right:8px;width:40px;height:40px;border:0;border-radius:50%;background:#0b0b0b;color:#f0aa22;cursor:pointer;font-size:25px;line-height:1}
.dress-filter-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.dress-filter{min-height:38px;padding:8px 14px;border:1px solid rgba(0,0,0,.17);border-radius:999px;background:#fff;color:#0b0b0b;cursor:pointer;font-size:13px;font-weight:700}
.dress-filter:hover,.dress-filter.active{border-color:#0b0b0b;background:#0b0b0b;color:#f0aa22}
.dress-result-status{margin:16px 0 0;color:var(--muted);font-size:14px}
.dress-grid{align-items:stretch}
.dress-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.06);transition:transform .2s ease,box-shadow .2s ease}
.dress-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(0,0,0,.13)}
.dress-card-art{aspect-ratio:4/3;display:grid;place-items:center;border-bottom:1px solid var(--line)}
.dress-card-art span{display:grid;width:62px;height:62px;place-items:center;border:1px solid currentColor;border-radius:50%;font:600 18px "Manrope",sans-serif;letter-spacing:.08em}
.dress-white{background:linear-gradient(145deg,#fff,#eadfca);color:#7a5b24}
.dress-black{background:linear-gradient(145deg,#303030,#050505);color:#f0aa22}
.dress-red{background:linear-gradient(145deg,#9c231c,#4d0908);color:#ffe0a0}
.dress-blue{background:linear-gradient(145deg,#38668d,#142b42);color:#ffe0a0}
.dress-card-copy{padding:18px}
.dress-color-tag{display:inline-flex;padding:5px 9px;border-radius:999px;background:#ffe39a;color:#6f4700;font-size:11px;font-weight:700}
.dress-card h3{margin:10px 0 3px;font:600 22px "Manrope",sans-serif}
.dress-card small{color:var(--muted);font-size:12px}
.dress-no-results{padding:54px 24px;text-align:center;border:1px dashed rgba(0,0,0,.25);border-radius:18px;background:#fff8e6}
.dress-no-results h3{margin:0 0 8px;font:600 26px "Manrope",sans-serif}
.dress-no-results p{margin:0 0 22px;color:var(--muted)}
.collection-note{margin:24px 0 0;color:var(--muted);font-size:13px}
.dress-search-clear:focus-visible,.dress-filter:focus-visible,.dress-search-control input:focus-visible{outline:3px solid #f0aa22;outline-offset:3px}
@media(max-width:600px){.dress-search-panel{padding:18px}.dress-filter-list{display:grid;grid-template-columns:1fr 1fr}.dress-filter:first-child{grid-column:1/-1}.dress-card h3{font-size:20px}.dress-no-results .btn{width:auto}}

/* Global service search */
.btn[type="button"]{cursor:pointer}
.site-search-open{overflow:hidden}
.site-search-trigger{width:auto;min-width:164px;height:40px;padding:0 14px;display:flex;flex:0 0 auto;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);border-radius:999px;background:#0b0b0b;color:#f0aa22;cursor:pointer}
.site-search-trigger svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.site-search-trigger span{white-space:nowrap;font-size:12px;font-weight:700}
.site-search-dialog{width:min(780px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;overflow:hidden;border:0;border-radius:24px;background:#fffdfa;color:#0b0b0b;box-shadow:0 30px 90px rgba(0,0,0,.34)}
.site-search-dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}
.site-search-shell{max-height:calc(100dvh - 32px);padding:30px;display:flex;flex-direction:column}
.site-search-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.site-search-top h2{font-size:clamp(38px,6vw,56px)}
.site-search-top .kicker{margin-bottom:9px}
.site-search-close{width:44px;height:44px;flex:0 0 auto;border:1px solid var(--line);border-radius:50%;background:#0b0b0b;color:#f0aa22;cursor:pointer;font-size:27px;line-height:1}
.site-search-intro{margin:13px 0 18px;color:var(--muted);font-size:16px}
.site-search-control{position:relative;flex:0 0 auto}
.site-search-control input{height:58px;margin:0;padding:14px 56px 14px 18px;border:1px solid rgba(0,0,0,.25);border-radius:14px;background:#fff;color:#0b0b0b;font-size:17px}
.site-search-clear{position:absolute;top:9px;right:9px;width:40px;height:40px;border:0;border-radius:50%;background:#0b0b0b;color:#f0aa22;cursor:pointer;font-size:24px;line-height:1}
.site-search-shortcuts{margin:13px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.site-search-shortcuts button{min-height:38px;padding:8px 13px;border:1px solid rgba(0,0,0,.16);border-radius:999px;background:#fff8e6;color:#0b0b0b;cursor:pointer;font-size:14px;font-weight:700}
.site-search-shortcuts button:hover{border-color:#0b0b0b;background:#0b0b0b;color:#f0aa22}
.site-search-status{margin:18px 0 10px;color:var(--muted);font-size:14px}
.site-search-results{min-height:0;display:grid;gap:9px;overflow-y:auto;padding-right:4px;overscroll-behavior:contain}
.site-search-result{padding:15px;display:grid;grid-template-columns:108px 1fr 28px;align-items:center;gap:14px;border:1px solid var(--line);border-radius:14px;background:#fff;color:#0b0b0b;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.site-search-result:hover{transform:translateY(-2px);border-color:#d58a00;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.site-search-result-type{color:#9a6200;font-size:11px;font-weight:700;letter-spacing:.1em}
.site-search-result-copy{min-width:0;display:grid;gap:2px}
.site-search-result-copy strong{font:600 19px "Manrope",sans-serif;line-height:1.25}
.site-search-result-copy small{color:var(--muted);font-size:14px;line-height:1.4}
.site-search-result-arrow{color:#d58a00;font-size:22px;text-align:right}
.site-search-empty{padding:38px 22px;display:grid;justify-items:center;gap:7px;text-align:center;border:1px dashed rgba(0,0,0,.25);border-radius:14px;background:#fff8e6}
.site-search-empty strong{font:600 23px "Manrope",sans-serif}
.site-search-empty span{color:var(--muted);font-size:14px}
.site-search-empty a{margin-top:9px;padding:10px 15px;border-radius:999px;background:#0b0b0b;color:#f0aa22;text-decoration:none;font-size:12px;font-weight:700}
.site-search-trigger:focus-visible,.site-search-close:focus-visible,.site-search-clear:focus-visible,.site-search-shortcuts button:focus-visible,.site-search-result:focus-visible{outline:3px solid #f0aa22;outline-offset:3px}
@media(max-width:1100px){.site-search-trigger{width:40px;min-width:40px;padding:0;display:grid;place-items:center;border-radius:50%}.site-search-trigger span{display:none!important}}
@media(max-width:600px){.site-search-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:18px}.site-search-shell{max-height:calc(100dvh - 20px);padding:20px 16px}.site-search-top h2{font-size:40px}.site-search-intro{margin-top:9px}.site-search-shortcuts{display:grid;grid-template-columns:1fr 1fr}.site-search-result{grid-template-columns:1fr 24px;gap:7px 10px}.site-search-result-type{grid-column:1/-1}.site-search-result-copy small{font-size:13px}.site-search-result-arrow{grid-column:2;grid-row:2}.site-search-close{width:40px;height:40px}.site-search-status{margin-top:15px}}

/* Original Doli House service photography */
.story-photo{position:relative;min-height:520px;margin:0;overflow:hidden;border-radius:24px;background:#171717;box-shadow:var(--shadow)}
.story-photo img{width:100%;height:100%;min-height:520px;display:block;object-fit:cover;object-position:center 42%}
.story-photo figcaption{position:absolute;left:18px;bottom:18px;padding:9px 13px;border-radius:999px;background:rgba(11,11,11,.88);color:#f0aa22;font-size:10px;font-weight:700;letter-spacing:.06em}
.service-visual--dress,.service-visual--dress img{min-height:560px}
.service-visual--dress img{object-position:center 42%}
.dress-card-art--photo{position:relative;overflow:hidden;background:#142b42}
.dress-card-art--photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 38%}
.category-art--photo{overflow:hidden;color:#fff}
.category-art--photo img{position:absolute;z-index:0;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center 37%}
.category-art--photo::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.68))}
.category-art--photo b,.category-art--photo span{position:relative;z-index:2;text-shadow:0 1px 12px rgba(0,0,0,.65)}
@media(max-width:980px){.service-visual--dress,.service-visual--dress img{min-height:520px}.service-visual--dress{max-width:520px}}
@media(max-width:600px){.story-photo,.story-photo img{min-height:430px}.story-photo figcaption{left:12px;bottom:12px}.service-visual--dress,.service-visual--dress img{min-height:430px}}

/* Jeep Tour details and original gallery */
.jeep-hero{grid-template-columns:.83fr 1.17fr;min-height:650px}
.hero-facts{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.hero-facts>*{padding:8px 12px;border:1px solid rgba(0,0,0,.14);border-radius:999px;background:rgba(255,255,255,.58);font-size:13px}
.hero-facts strong{background:#0b0b0b;color:#f0aa22}
.service-visual--jeep{min-height:440px;border-radius:28px}
.service-visual--jeep img{min-height:440px;object-position:center}
.jeep-times{background:#fffdfa}
.tour-time-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tour-time-card{position:relative;min-height:245px;padding:28px;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#ffe39a}
.tour-time-card:nth-child(2){background:#fff}
.tour-time-card:nth-child(3){background:#171717;color:#fff}
.tour-time-card:nth-child(3) .kicker{color:#f0aa22}
.time-number{position:absolute;top:20px;right:22px;color:rgba(0,0,0,.22);font:italic 35px "Manrope",sans-serif}
.tour-time-card:nth-child(3) .time-number{color:rgba(255,255,255,.22)}
.tour-time-card h3{margin:62px 0 16px;font:600 28px "Manrope",sans-serif}
.tour-time-card>strong{font-size:21px}
.jeep-price-strip{margin-top:14px;padding:25px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-radius:20px;background:#d58a00;color:#0b0b0b}
.jeep-price-strip div{padding-right:18px;border-right:1px solid rgba(0,0,0,.22)}
.jeep-price-strip div:last-child{padding-right:0;border-right:0}
.jeep-price-strip small{display:block;margin-bottom:4px;font-size:11px;font-weight:700;letter-spacing:.09em}
.jeep-price-strip strong{font:600 23px "Manrope",sans-serif}
.jeep-locations{background:#fff8e6}
.jeep-location-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.route-panel{padding:30px;border:1px solid var(--line);border-radius:22px;background:#fff}
.route-panel--main{background:#171717;color:#fff}
.route-panel h3{margin:15px 0 20px;font:600 27px "Manrope",sans-serif}
.route-list{margin:0;padding:0;list-style:none}
.route-list li{padding:14px 0;display:grid;gap:3px;border-bottom:1px solid rgba(0,0,0,.14)}
.route-panel--main .route-list li{border-bottom-color:rgba(255,255,255,.18)}
.route-list li:last-child{border-bottom:0}
.route-list b{font-size:16px}
.route-list small{color:var(--muted);font-size:14px}
.route-panel--main .route-list small{color:#cfcfcf}
.route-list--compact li{padding:10px 0}
.jeep-route-note{margin:16px 0 0;padding:14px 17px;border-left:4px solid #d58a00;background:#fff;color:var(--muted);font-size:14px}
.jeep-gallery-section{background:#101010;color:#fff}
.jeep-gallery-section .section-head>p{color:#cfcfcf}
.jeep-gallery{column-count:3;column-gap:14px}
.jeep-gallery figure{position:relative;margin:0 0 14px;overflow:hidden;border-radius:18px;background:#262626;break-inside:avoid}
.jeep-gallery img{width:100%;height:auto;display:block;transition:transform .35s ease}
.jeep-gallery figure:hover img{transform:scale(1.025)}
.jeep-gallery figcaption{position:absolute;left:12px;bottom:12px;padding:7px 10px;border-radius:999px;background:rgba(11,11,11,.84);color:#f0aa22;font-size:10px;font-weight:700}
.jeep-extras{background:#fffdfa}
.jeep-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.jeep-detail-card{padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff}
.jeep-detail-card--dark{background:#171717;color:#fff}
.jeep-detail-card h3{margin:14px 0 12px;font:600 25px "Manrope",sans-serif}
.jeep-detail-card p{color:var(--muted)}
.jeep-detail-card--dark p{color:#cfcfcf}
.jeep-detail-card ul{margin:20px 0 0;padding:0;list-style:none}
.jeep-detail-card li{padding:11px 0;display:grid;gap:2px;border-bottom:1px solid var(--line);font-size:14px}
.jeep-detail-card--dark li{border-bottom-color:rgba(255,255,255,.16)}
.jeep-detail-card li:last-child{border-bottom:0}
.jeep-detail-card li>span{color:var(--muted)}
.jeep-detail-card--dark li>span{color:#cfcfcf}
.service-note{padding:12px;border-radius:12px;background:#fff8e6;font-size:13px}
.jeep-detail-card--dark .label{background:#f0aa22;color:#0b0b0b}
.jeep-cta>p:not(.kicker){max-width:670px;margin:0 auto;color:#1f1b15}
.jeep-cta .center-actions{margin-top:28px}
.jeep-cta .secondary{border-color:rgba(0,0,0,.35);background:rgba(255,255,255,.35)}
@media(max-width:980px){.jeep-hero{grid-template-columns:1fr}.service-visual--jeep{max-width:none}.tour-time-grid,.jeep-price-strip,.jeep-service-grid{grid-template-columns:1fr}.jeep-price-strip div{padding:0 0 14px;border-right:0;border-bottom:1px solid rgba(0,0,0,.22)}.jeep-price-strip div:last-child{padding-bottom:0;border-bottom:0}.jeep-location-grid{grid-template-columns:1fr}.jeep-gallery{column-count:2}}
@media(max-width:600px){.service-visual--jeep,.service-visual--jeep img{min-height:300px}.service-visual--jeep{border-radius:18px}.tour-time-card{min-height:210px;padding:22px}.tour-time-card h3{margin-top:48px}.jeep-price-strip{padding:21px}.route-panel,.jeep-detail-card{padding:22px}.jeep-gallery{column-count:1}.jeep-gallery figure{border-radius:14px}.jeep-cta .center-actions{align-items:stretch}}

/* Couple package and filterable real-session albums */
.couple-hero{grid-template-columns:.82fr 1.18fr;min-height:700px;background:radial-gradient(circle at 28% 16%,rgba(213,138,0,.26),transparent 31%),linear-gradient(135deg,#171717,#080808);color:#fff}
.couple-hero .hero-copy>p:not(.kicker){color:#d5d5d5}
.couple-hero .couple-concept-line{margin:18px 0 0!important;color:#f0aa22!important;font-size:13px!important;font-weight:700;letter-spacing:.15em}
.couple-hero .secondary{border-color:rgba(255,255,255,.3);background:transparent;color:#fff}
.couple-hero .secondary:hover{background:#f0aa22;color:#0b0b0b}
.service-visual--couple{min-height:520px;border-radius:30px;background:#242424}
.service-visual--couple img{min-height:520px;object-position:center 48%}
.couple-price-card{width:max-content;max-width:100%;margin-top:26px;padding:14px 18px;display:grid;grid-template-columns:auto auto;align-items:end;gap:0 12px;border:1px solid rgba(240,170,34,.55);border-radius:16px;background:rgba(240,170,34,.11)}
.couple-price-card small{grid-column:1/-1;color:#f0aa22;font-size:10px;font-weight:700;letter-spacing:.14em}
.couple-price-card>strong{font:600 30px "Manrope",sans-serif;color:#fff}
.couple-price-card>span{padding-bottom:3px;color:#cfcfcf;font-size:13px}
.couple-package{background:#fffdfa}
.couple-inclusions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.couple-inclusion-card{position:relative;min-height:300px;padding:28px;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff8e6}
.couple-inclusion-card:nth-child(2){background:#fff}
.couple-inclusion-card--dark{background:#171717;color:#fff}
.couple-inclusion-card--dark p:not(.kicker){color:#cfcfcf}
.couple-card-number{position:absolute;right:21px;top:18px;color:rgba(0,0,0,.18);font:italic 39px "Manrope",sans-serif}
.couple-inclusion-card--dark .couple-card-number{color:rgba(255,255,255,.2)}
.couple-inclusion-card h3{margin:65px 0 13px;font:600 27px "Manrope",sans-serif;line-height:1.15}
.couple-inclusion-card p:not(.kicker){margin:0;color:var(--muted);font-size:15px}
.couple-policy{margin-top:14px;padding:22px 25px;display:grid;grid-template-columns:34px 1fr;align-items:start;gap:13px;border-radius:18px;background:#d58a00;color:#0b0b0b}
.couple-policy>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#0b0b0b;color:#f0aa22;font-size:14px}
.couple-policy p{grid-column:2;margin:0;font-size:15px}
.couple-details{background:#fff8e6}
.couple-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.couple-detail-panel{padding:30px;border:1px solid var(--line);border-radius:22px;background:#fff}
.couple-detail-panel--locations{background:#171717;color:#fff}
.couple-detail-panel h3{margin:15px 0 20px;font:600 28px "Manrope",sans-serif;line-height:1.15}
.couple-detail-intro{margin:0 0 17px;color:var(--muted);font-size:15px}
.couple-detail-list,.couple-cost-list{margin:0;padding:0;list-style:none}
.couple-detail-list li{padding:14px 0;display:grid;grid-template-columns:38px 1fr;align-items:start;gap:12px;border-bottom:1px solid rgba(255,255,255,.16)}
.couple-detail-list li:last-child{border-bottom:0}
.couple-detail-list li>b{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#f0aa22;color:#0b0b0b;font-size:12px}
.couple-detail-list li>span{display:grid;gap:2px}
.couple-detail-list strong{font-size:16px}
.couple-detail-list small{color:#cfcfcf;font-size:14px}
.couple-cost-list li{padding:17px 0;display:grid;gap:5px;border-bottom:1px solid var(--line)}
.couple-cost-list li:last-child{border-bottom:0}
.couple-cost-list span{color:var(--muted);font-size:14px}
.couple-cost-list strong{font:600 20px "Manrope",sans-serif}
.couple-extras-grid{margin-top:16px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.couple-extras-grid article{padding:20px;display:grid;grid-template-columns:46px 1fr;align-items:center;gap:14px;border:1px solid var(--line);border-radius:17px;background:#fff}
.couple-extras-grid article>span{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:#ffe39a;color:#6f4700;font-size:13px;font-weight:700}
.couple-extras-grid p{margin:0;display:grid;gap:2px}
.couple-extras-grid strong{font-size:15px}
.couple-extras-grid small{color:var(--muted);font-size:13px}
.couple-transport-note{margin-top:16px;padding:24px;display:grid;grid-template-columns:100px 1fr;align-items:center;gap:22px;border-radius:19px;background:#0b0b0b;color:#fff}
.couple-transport-note>div{padding:12px 9px;border:1px solid rgba(240,170,34,.55);border-radius:12px;color:#f0aa22;text-align:center;font:600 19px "Manrope",sans-serif;letter-spacing:.1em}
.couple-transport-note p{grid-column:2;margin:0;color:#d2d2d2;font-size:15px}
.couple-transport-note strong{color:#fff}
.couple-album-section{background:#101010;color:#fff}
.couple-album-section .section-head>p{color:#cfcfcf}
.couple-album-toolbar{margin-bottom:12px;display:flex;flex-wrap:wrap;gap:9px}
.couple-album-filter{min-height:45px;padding:9px 15px;display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:transparent;color:#fff;cursor:pointer;font-size:14px;font-weight:700}
.couple-album-filter small{display:grid;min-width:24px;height:24px;padding:0 5px;place-items:center;border-radius:999px;background:rgba(255,255,255,.12);color:#cfcfcf;font-size:11px}
.couple-album-filter:hover,.couple-album-filter.active{border-color:#f0aa22;background:#f0aa22;color:#0b0b0b}
.couple-album-filter.active small{background:#0b0b0b;color:#f0aa22}
.couple-album-status{margin:0 0 18px;color:#bdbdbd;font-size:14px}
.couple-gallery{column-count:3;column-gap:14px}
.couple-gallery figure{position:relative;margin:0 0 14px;overflow:hidden;border-radius:18px;background:#242424;break-inside:avoid}
.couple-gallery img{width:100%;height:auto;display:block;transition:transform .35s ease}
.couple-gallery figure:hover img{transform:scale(1.025)}
.couple-gallery figcaption{position:absolute;left:12px;bottom:12px;padding:7px 10px;border-radius:999px;background:rgba(11,11,11,.84);color:#f0aa22;font-size:10px;font-weight:700;letter-spacing:.06em}
.couple-cta>p:not(.kicker){max-width:700px;margin:0 auto;color:#1f1b15}
.couple-cta .center-actions{margin-top:28px}
.couple-cta .secondary{border-color:rgba(0,0,0,.35);background:rgba(255,255,255,.35)}
.couple-album-filter:focus-visible{outline:3px solid #f0aa22;outline-offset:3px}
@media(max-width:980px){.couple-hero{grid-template-columns:1fr;min-height:auto}.service-visual--couple{max-width:none}.couple-inclusions,.couple-extras-grid{grid-template-columns:1fr}.couple-inclusion-card{min-height:240px}.couple-inclusion-card h3{margin-top:48px}.couple-detail-grid{grid-template-columns:1fr}.couple-gallery{column-count:2}}
@media(max-width:600px){.service-visual--couple,.service-visual--couple img{min-height:320px}.service-visual--couple{border-radius:18px}.couple-price-card{width:100%;grid-template-columns:1fr}.couple-price-card>span{padding:0}.couple-inclusion-card,.couple-detail-panel{padding:22px}.couple-policy{padding:19px;grid-template-columns:1fr}.couple-policy p{grid-column:1}.couple-extras-grid article{grid-template-columns:40px 1fr}.couple-extras-grid article>span{width:40px;height:40px}.couple-transport-note{grid-template-columns:1fr;gap:13px}.couple-transport-note>div{width:100px}.couple-transport-note p{grid-column:1}.couple-album-toolbar{display:grid;grid-template-columns:1fr 1fr}.couple-album-filter{justify-content:space-between}.couple-gallery{column-count:1}.couple-gallery figure{border-radius:14px}.couple-cta .center-actions{align-items:stretch}}

/* Beach and resort galleries */
.resort-album-page{min-height:calc(100vh - 82px);background:radial-gradient(circle at 86% 3%,rgba(40,201,196,.2),transparent 30%),#101010}
.resort-album-heading{margin-bottom:34px;display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:42px}
.resort-album-heading h1{margin:0;font:600 clamp(52px,7vw,88px)/.98 "Manrope",Arial,sans-serif;letter-spacing:-.04em}
.resort-album-copy{max-width:690px;margin:22px 0 0;color:#cfcfcf;font-size:16px}
.location-album-back{display:inline-flex;margin-bottom:26px;color:#f0aa22;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.08em}
.location-album-back:hover{text-decoration:underline}
.resort-location-card{padding:27px;border:1px solid rgba(104,232,224,.34);border-radius:22px;background:linear-gradient(145deg,rgba(30,183,177,.2),rgba(255,255,255,.04));box-shadow:0 22px 55px rgba(0,0,0,.24)}
.resort-hot-tag{display:inline-flex;padding:6px 10px;border-radius:999px;background:#67ddd5;color:#082a28;font-size:10px;font-weight:700;letter-spacing:.12em}
.resort-location-card strong{display:block;margin:17px 0 5px;color:#fff;font:600 clamp(27px,3vw,38px) "Manrope",sans-serif;line-height:1.05}
.resort-location-card small{display:block;color:#cfdedc;font-size:13px}
.resort-album-toolbar{margin-top:4px}
.resort-gallery figcaption{color:#74e1da}
.resort-gallery-empty{margin:24px 0;padding:52px 24px;text-align:center;border:1px dashed rgba(116,225,218,.45);border-radius:20px;background:rgba(116,225,218,.07)}
.resort-gallery-empty strong{font:600 28px "Manrope",sans-serif}
.resort-gallery-empty p{margin:8px 0 0;color:#cfcfcf}
.category-card--resort .category-art--photo img{object-position:center 38%}
.category-card--resort .category-art--photo::before{background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,58,58,.78))}
@media(max-width:800px){.resort-album-heading{grid-template-columns:1fr;align-items:start}.resort-location-card{max-width:560px}}
@media(max-width:600px){.resort-album-page{min-height:calc(100vh - 72px)}.resort-album-heading{gap:25px}.resort-album-heading h1{font-size:52px}.resort-location-card{padding:21px}.resort-album-toolbar{grid-template-columns:1fr}.resort-gallery-empty{padding:38px 18px}.resort-gallery-empty strong{font-size:24px}}

/* Women's solo and group photoshoot package */
.photo-package-feature{background:#fffdfa}
.female-package-banner{min-height:480px;display:grid;grid-template-columns:1.12fr .88fr;overflow:hidden;border-radius:26px;background:#111;color:#fff;text-decoration:none;box-shadow:var(--shadow);transition:transform .22s ease,box-shadow .22s ease}
.female-package-banner:hover{transform:translateY(-4px);box-shadow:0 28px 75px rgba(0,0,0,.2)}
.female-package-banner-copy{padding:clamp(30px,5vw,58px);display:flex;flex-direction:column;justify-content:center}
.female-package-banner h2{max-width:720px;font-size:clamp(39px,5vw,62px)}
.female-package-banner-copy>p:not(.kicker){max-width:650px;margin:20px 0;color:#cfcfcf;font-size:16px}
.female-package-banner-prices{margin:8px 0 25px;display:flex;flex-wrap:wrap;gap:10px}
.female-package-banner-prices>span{min-width:190px;padding:12px 15px;display:grid;gap:2px;border:1px solid rgba(240,170,34,.45);border-radius:13px;background:rgba(240,170,34,.1)}
.female-package-banner-prices small{color:#f0aa22;font-size:10px;font-weight:700;letter-spacing:.11em}
.female-package-banner-prices strong{font:600 20px "Manrope",sans-serif}
.female-package-banner-link{color:#f0aa22;font-size:12px;letter-spacing:.08em}
.female-package-banner figure{min-height:480px;margin:0;overflow:hidden;background:#292929}
.female-package-banner img{width:100%;height:100%;min-height:480px;display:block;object-fit:cover;object-position:center 44%;transition:transform .4s ease}
.female-package-banner:hover img{transform:scale(1.025)}
.female-hero{grid-template-columns:.88fr 1.12fr;min-height:700px;background:radial-gradient(circle at 17% 17%,rgba(255,255,255,.7),transparent 34%),linear-gradient(125deg,#fff8e6,#f3b428)}
.female-hero .female-concept-line{margin:17px 0 0!important;color:#7e5000!important;font-size:13px!important;font-weight:700;letter-spacing:.14em}
.service-visual--female{min-height:550px;border-radius:240px 240px 28px 28px;background:#1b1b1b}
.service-visual--female img{min-height:550px;object-position:center 43%}
.female-hero-prices{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.female-hero-prices--single{grid-template-columns:minmax(0,410px)}
.female-hero-prices article{padding:13px 15px;display:grid;grid-template-columns:1fr auto;align-items:end;gap:1px 8px;border:1px solid rgba(0,0,0,.18);border-radius:14px;background:rgba(255,255,255,.48)}
.female-hero-prices small{grid-column:1/-1;color:#815200;font-size:10px;font-weight:700;letter-spacing:.1em}
.female-hero-prices strong{font:600 23px "Manrope",sans-serif}
.female-hero-prices article>span{padding-bottom:2px;color:var(--muted);font-size:12px}
.female-pricing{background:#fffdfa}
.female-tier-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.female-tier-grid--single{grid-template-columns:minmax(0,760px);justify-content:center}
.female-tier-card{padding:32px;border:1px solid var(--line);border-radius:23px;background:#fff8e6}
.female-tier-card--group{background:#171717;color:#fff}
.female-tier-top{display:flex;align-items:center;justify-content:space-between;gap:20px}
.female-tier-top .kicker{margin:0}
.female-tier-top>span{display:grid;min-width:42px;height:42px;padding:0 8px;place-items:center;border-radius:50%;background:#f0aa22;color:#0b0b0b;font:600 15px "Manrope",sans-serif}
.female-tier-card h3{margin:24px 0 10px;font:600 34px "Manrope",sans-serif;line-height:1.15}
.female-tier-price{display:flex;align-items:end;gap:8px;margin-bottom:22px}
.female-tier-price strong{font:600 clamp(31px,4vw,48px) "Manrope",sans-serif;line-height:1}
.female-tier-price>span{padding-bottom:3px;color:var(--muted);font-size:14px}
.female-tier-card--group .female-tier-price>span{color:#cfcfcf}
.female-package-list{margin:0 0 26px;padding:0;list-style:none}
.female-package-list li{padding:14px 0;display:grid;grid-template-columns:31px 1fr;align-items:start;gap:10px;border-bottom:1px solid rgba(0,0,0,.13)}
.female-tier-card--group .female-package-list li{border-bottom-color:rgba(255,255,255,.16)}
.female-package-list li>span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#f0aa22;color:#0b0b0b;font-size:13px;font-weight:700}
.female-package-list p{margin:0;display:grid;gap:2px}
.female-package-list strong{font-size:15px}
.female-package-list small{color:var(--muted);font-size:13px}
.female-tier-card--group .female-package-list small{color:#cfcfcf}
.female-tier-card .btn{width:100%}
.female-tier-card--group .primary{background:#f0aa22;color:#0b0b0b}
.female-fixed-rate{margin:-5px 0 24px;padding:14px 16px;display:grid;gap:3px;border-radius:13px;background:rgba(240,170,34,.13);color:#d7d7d7;font-size:13px}
.female-fixed-rate strong{color:#f0aa22;font-size:14px}
.female-location-policy{margin-top:16px;padding:22px 25px;display:grid;grid-template-columns:34px 1fr;align-items:start;gap:13px;border-radius:18px;background:#d58a00;color:#0b0b0b}
.female-location-policy>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#0b0b0b;color:#f0aa22;font-size:14px}
.female-location-policy p{grid-column:2;margin:0;font-size:15px}
.female-details{background:#fff8e6}
.female-transport-note{margin-bottom:0}
.service-visual--group img{object-position:center}
.family-price-card{max-width:620px}
.female-gallery figure{cursor:zoom-in;box-shadow:0 12px 30px rgba(0,0,0,.2)}
.female-gallery figure:focus-visible{outline:3px solid #f0aa22;outline-offset:4px}
.female-gallery-hint{margin:8px 0 0;color:#cfcfcf;font-size:13px;text-align:center}
.photo-lightbox{max-width:94vw;max-height:94vh;width:fit-content;margin:auto;padding:14px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:#0b0b0b;color:#fff;box-shadow:0 35px 100px rgba(0,0,0,.62);overflow:visible}
.photo-lightbox[open]{display:grid;place-items:center;gap:10px}
.photo-lightbox::backdrop{background:rgba(0,0,0,.86);backdrop-filter:blur(7px)}
.photo-lightbox img{display:block;max-width:min(90vw,1400px);max-height:82vh;width:auto;height:auto;border-radius:12px;object-fit:contain}
.photo-lightbox p{margin:0;padding:0 42px 2px;color:#f0aa22;font-size:12px;font-weight:700;letter-spacing:.08em;text-align:center}
.photo-lightbox-close{position:absolute;z-index:2;right:-12px;top:-12px;width:42px;height:42px;border:2px solid rgba(255,255,255,.72);border-radius:50%;background:#f0aa22;color:#0b0b0b;cursor:pointer;font-size:25px;line-height:1}
.photo-lightbox-close:focus-visible{outline:3px solid #fff;outline-offset:3px}
.female-cta>p:not(.kicker){max-width:720px;margin:0 auto;color:#1f1b15}
.female-cta .center-actions{margin-top:28px}
.female-cta .secondary{border-color:rgba(0,0,0,.35);background:rgba(255,255,255,.35)}
.female-package-banner:focus-visible{outline:3px solid #f0aa22;outline-offset:4px}
@media(max-width:980px){.female-package-banner{grid-template-columns:1fr}.female-package-banner figure,.female-package-banner img{min-height:390px;max-height:560px}.female-hero{grid-template-columns:1fr;min-height:auto}.service-visual--female{max-width:600px}.female-tier-grid{grid-template-columns:1fr}}
@media(max-width:600px){.female-package-banner{min-height:0;border-radius:18px}.female-package-banner-copy{padding:26px 21px}.female-package-banner h2{font-size:38px}.female-package-banner-prices{display:grid}.female-package-banner-prices>span{min-width:0}.female-package-banner figure,.female-package-banner img{min-height:330px}.female-hero-prices{grid-template-columns:1fr}.service-visual--female,.service-visual--female img{min-height:410px}.service-visual--female{border-radius:180px 180px 18px 18px}.female-tier-card{padding:23px}.female-tier-card h3{font-size:29px}.female-tier-price{align-items:start;flex-direction:column}.female-location-policy{padding:19px;grid-template-columns:1fr}.female-location-policy p{grid-column:1}.photo-lightbox{padding:8px;border-radius:14px}.photo-lightbox img{max-width:90vw;max-height:80vh;border-radius:9px}.photo-lightbox p{padding:0 26px;font-size:10px}.photo-lightbox-close{right:-5px;top:-18px}.female-cta .center-actions{align-items:stretch}}

/* Album 08 · Beach and resort */
.location-album-page{min-height:calc(100vh - 82px);padding-top:72px}
.location-album-heading{max-width:930px;margin-bottom:38px}
.location-album-heading h1{margin:0;font:600 clamp(52px,7vw,88px) "Manrope",Arial,sans-serif;line-height:.96;letter-spacing:-.04em}
.location-album-heading .kicker{margin-top:26px}
.location-album-back{display:inline-flex;color:#f0aa22;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.08em}
.location-album-back:hover{text-decoration:underline}
.location-album-copy{max-width:850px;margin:24px 0 0;color:#cfcfcf;font-size:16px}
.location-gallery-noscript{padding:20px;border:1px solid rgba(255,255,255,.2);border-radius:14px;color:#ddd}
.resort-filter-title{margin:22px 0 9px;color:#f0aa22;font-size:10px;font-weight:700;letter-spacing:.18em}
.resort-album-toolbar{margin-bottom:18px}
.resort-location-toolbar{margin-bottom:14px}
.resort-gallery figcaption{max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:600px){.location-album-page{padding-top:48px}.location-album-heading{margin-bottom:30px}.location-album-heading h1{font-size:clamp(47px,15vw,66px)}.location-album-copy{font-size:14px}.resort-location-toolbar{grid-template-columns:1fr}.resort-location-toolbar .couple-album-filter{width:100%}}

/* Album 09 · The Silk Road packages */
.silk-road-package-panel{margin:10px 0 56px;padding:clamp(24px,4vw,46px);border:1px solid rgba(240,170,34,.34);border-radius:26px;background:#fffdfa;color:#0b0b0b}
.silk-road-package-panel .section-head{padding:0}
.silk-road-package-panel .section-head>p{color:#655f55}
.silk-road-rate-grid{margin:26px 0 18px;grid-template-columns:repeat(4,minmax(0,1fr))}
.silk-road-rate-grid article{min-width:0;background:#fff8e6}
.silk-road-rate-grid strong{font-size:clamp(18px,2vw,25px)}
.silk-road-detail-grid{margin-top:18px;grid-template-columns:repeat(3,minmax(0,1fr))}
.silk-road-extra-grid{color:#0b0b0b}
.silk-road-gallery-heading{margin:0 0 22px}
.silk-road-gallery-heading .kicker{margin-bottom:9px}
.silk-road-gallery-heading h2{margin:0;font:600 clamp(31px,4vw,48px) "Manrope",sans-serif}
@media(max-width:980px){.silk-road-rate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.silk-road-detail-grid{grid-template-columns:1fr}}
@media(max-width:600px){.silk-road-package-panel{margin-bottom:42px;padding:22px 18px;border-radius:18px}.silk-road-rate-grid{grid-template-columns:1fr}.silk-road-gallery-heading h2{font-size:32px}}

/* Outfit filters built from published albums */
.outfit-category-card[role="button"]{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.outfit-category-card[role="button"]:hover,.outfit-category-card[role="button"].active{transform:translateY(-4px);border-color:#f0aa22;box-shadow:0 18px 42px rgba(0,0,0,.35)}
.outfit-category-card[role="button"]:focus-visible{outline:3px solid #f0aa22;outline-offset:4px}
.outfit-category-card[role="button"]::after{content:"XEM ẢNH →";margin-top:auto;padding-top:22px;color:#f0aa22;font-size:10px;font-weight:700;letter-spacing:.12em}
html[data-lang="en"] .outfit-category-card[role="button"]::after{content:"VIEW PHOTOS →"}
.outfit-category-card:nth-child(3n+2)[role="button"]::after{color:#0b0b0b}
.outfit-category-card:has(.outfit-subcategories)::after{margin-top:0;padding-top:14px}
.outfit-filter-heading{margin:20px 0 9px;color:#7b560c;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.outfit-filter-list{margin-top:0}
.outfit-filter-list .dress-filter{display:inline-flex;align-items:center;gap:7px}
.outfit-filter-list .dress-filter small{min-width:22px;height:22px;padding:0 6px;display:inline-grid;place-items:center;border-radius:999px;background:#f0aa22;color:#0b0b0b;font-size:10px;line-height:1}
.outfit-filter-list .dress-filter.active small{background:#fff;color:#0b0b0b}
.outfit-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.outfit-photo-card{min-width:0;padding:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:19px;background:#fff;color:#0b0b0b;text-align:left;cursor:zoom-in;box-shadow:0 12px 32px rgba(0,0,0,.08);transition:transform .22s ease,box-shadow .22s ease}
.outfit-photo-card:hover{transform:translateY(-5px);box-shadow:0 21px 48px rgba(0,0,0,.16)}
.outfit-photo-card:focus-visible{outline:3px solid #f0aa22;outline-offset:4px}
.outfit-photo-card.is-wide{grid-column:span 2}
.outfit-photo-media{position:relative;aspect-ratio:4/5;overflow:hidden;background:#ded5c3}
.outfit-photo-card.is-wide .outfit-photo-media{aspect-ratio:16/10}
.outfit-photo-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 66%,rgba(0,0,0,.25));pointer-events:none}
.outfit-photo-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .38s ease}
.outfit-photo-card:hover img{transform:scale(1.025)}
.outfit-photo-copy{min-height:145px;padding:17px;display:flex;flex:1;flex-direction:column}
.outfit-photo-copy small{color:#9b6500;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.outfit-photo-copy strong{margin:8px 0 13px;font:600 21px "Manrope",sans-serif;line-height:1.18}
.outfit-photo-copy .outfit-product-details{margin:0 0 14px;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:6px;color:inherit;font-size:10px;font-weight:700;letter-spacing:0}.outfit-product-details i{padding:5px 7px;border:1px solid rgba(240,170,34,.4);border-radius:999px;color:#d7d0bd;font-style:normal}.outfit-product-details .rental-price{border-color:#ffd400;background:#ffd400;color:#080808}
.outfit-photo-copy>span{margin-top:auto;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em}
.outfit-photo-copy b{color:#d58a00;font-size:17px}
.outfit-lightbox-copy{width:100%;max-width:min(90vw,900px);padding:2px 44px 4px;text-align:center}
.outfit-lightbox-copy strong{display:block;color:#fff;font:600 21px "Manrope",sans-serif}
.outfit-lightbox-copy p{padding:0;color:#f0aa22}
.outfit-lightbox img{max-height:76vh}
@media(max-width:980px){.outfit-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.outfit-photo-card.is-wide{grid-column:span 2}}
@media(max-width:720px){.outfit-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.outfit-photo-copy{min-height:132px;padding:14px}.outfit-photo-copy strong{font-size:18px}.outfit-photo-card.is-wide{grid-column:span 2}}
@media(max-width:480px){.outfit-photo-grid{gap:10px}.outfit-photo-card{border-radius:14px}.outfit-photo-copy{min-height:126px;padding:12px}.outfit-photo-copy small{font-size:8px}.outfit-photo-copy strong{font-size:17px}.outfit-photo-copy>span{font-size:9px}.outfit-lightbox-copy{padding:2px 20px 4px}.outfit-filter-list{display:flex}.dress-search-panel{padding:16px}}

/* Service expansion, editorial albums and international one-day tour */
.service-grid{grid-template-columns:repeat(4,1fr)}
.album-directory-hero{grid-template-columns:1fr .55fr}.album-monogram{min-height:300px;display:grid;place-items:center;border-radius:24px;background:#111;color:#f0aa22;font:600 clamp(58px,8vw,116px) "Manrope",sans-serif;letter-spacing:-.05em}.album-empty-state{max-width:820px;margin:auto;padding:64px;border:1px solid var(--line);border-radius:24px;text-align:center;background:#fff;box-shadow:var(--shadow)}.album-empty-state p:not(.kicker){max-width:650px;margin:22px auto 30px;color:var(--muted)}
.international-tour{background:#fff8e6}.day-tour-times{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}.day-tour-times article{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff}.day-tour-times article.popular{background:#111;color:#f0aa22}.day-tour-times b,.day-tour-times strong{display:block}.day-tour-times b{font-size:10px;letter-spacing:.12em}.day-tour-times strong{margin-top:8px;font-size:18px}.day-tour-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.day-tour-panel,.day-tour-inclusions article,.photo-package-international{padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff}.day-tour-timeline{margin:0;padding:0;list-style:none}.day-tour-timeline li{display:grid;grid-template-columns:90px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.day-tour-timeline time{font-weight:700;color:var(--terra)}.tour-caveat,.tour-formula{padding:12px;border-radius:10px;background:#fff0c8;font-weight:600}.day-tour-price-list{display:grid}.day-tour-price-list span{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}.day-tour-inclusions{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.day-tour-inclusions h3,.photo-package-international h3{margin-top:0;font:600 25px "Manrope",sans-serif}.day-tour-inclusions ul{padding-left:20px}.photo-package-international{margin-top:18px;background:#111;color:#fff}.photo-package-international p{color:rgba(255,255,255,.78)}.international-prices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.international-prices span{display:grid;gap:4px;padding:20px;border:1px solid rgba(255,255,255,.2);border-radius:14px}.international-prices b{color:#f0aa22;font-size:20px}.international-prices em{color:#fff;font:inherit}.photo-package-international .tour-formula{background:#f0aa22;color:#111}
@media(max-width:980px){.service-grid{grid-template-columns:1fr 1fr}.album-directory-hero,.day-tour-layout{grid-template-columns:1fr}.day-tour-inclusions{grid-template-columns:1fr}}
@media(max-width:600px){.service-grid,.day-tour-times,.international-prices{grid-template-columns:1fr}.album-empty-state{padding:38px 20px}.day-tour-timeline li{grid-template-columns:1fr;gap:2px}}

/* Mui Ne Tour hub */
.tour-options{background:#fff8e6}.tour-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tour-choice-card{min-height:390px;padding:clamp(24px,4vw,44px);display:flex;flex-direction:column;border:1px solid var(--line);border-radius:24px;background:#fff;color:#0b0b0b;text-decoration:none;box-shadow:var(--shadow);transition:transform .22s ease,box-shadow .22s ease}.tour-choice-card:hover{transform:translateY(-6px);box-shadow:0 24px 58px rgba(0,0,0,.18)}.tour-choice-card:focus-visible{outline:3px solid #f0aa22;outline-offset:4px}.tour-choice-card--dark{border-color:#111;background:#111;color:#fff}.tour-choice-number{align-self:flex-end;color:#d58a00;font:600 54px "Manrope",sans-serif;line-height:1}.tour-choice-card h3{margin:8px 0 18px;font:600 clamp(31px,4vw,50px) "Manrope",sans-serif;line-height:1.02;letter-spacing:-.03em}.tour-choice-card h3 em{color:#d58a00}.tour-choice-card>p:not(.kicker){max-width:600px;margin:0 0 24px;color:#655f55;line-height:1.65}.tour-choice-card--dark>p:not(.kicker){color:rgba(255,255,255,.72)}.tour-choice-card strong{margin-top:auto;font-size:18px}.tour-choice-card>b{margin-top:20px;color:#d58a00;font-size:10px;letter-spacing:.12em}.section-anchor{position:relative;top:-90px;visibility:hidden}
@media(max-width:800px){.tour-choice-grid{grid-template-columns:1fr}.tour-choice-card{min-height:350px}}
@media(max-width:600px){.tour-choice-card{min-height:320px;padding:24px 20px;border-radius:18px}.tour-choice-number{font-size:42px}.tour-choice-card h3{font-size:32px}}

/* Doli House luxury gold and black visual system */
:root{--lux-black:#070706;--lux-panel:#11110f;--lux-panel-2:#181711;--lux-gold:#d6ae45;--lux-gold-light:#f3d47a;--lux-gold-deep:#9e711b;--lux-ivory:#f7f1e3;--lux-muted:#bdb39f;--lux-line:rgba(214,174,69,.26);--lux-shadow:0 30px 80px rgba(0,0,0,.42)}
body{background:var(--lux-black);color:var(--lux-ivory);font-family:"Manrope",system-ui,sans-serif;font-weight:400;letter-spacing:.005em}
body :is(h1,h2,h3,h4){font-family:"Manrope",Arial,sans-serif!important;font-weight:600!important;letter-spacing:-.032em}
body :is(p,li,small,label,input,select,textarea,button){letter-spacing:.005em}
::selection{background:var(--lux-gold);color:#080806}

.topbar{border-bottom-color:var(--lux-line);background:rgba(7,7,6,.94);box-shadow:0 14px 45px rgba(0,0,0,.28)}
.brand{color:var(--lux-ivory)}.brand small,.desktop-nav a:hover,.desktop-nav a.active{color:var(--lux-gold-light)}
.brand-logo{border:1px solid var(--lux-line);box-shadow:0 7px 18px rgba(0,0,0,.35)}
.desktop-nav a{color:#e9e1d0;letter-spacing:.08em}.desktop-nav a.active{position:relative}.desktop-nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:1px;background:linear-gradient(90deg,transparent,var(--lux-gold-light),transparent)}
.lang-toggle,.menu-btn{border-color:var(--lux-line);background:#11110f;color:var(--lux-ivory)}
.lang-toggle button{color:var(--lux-muted)}.lang-toggle button.active{background:linear-gradient(135deg,var(--lux-gold-light),var(--lux-gold-deep));color:#080806}
.mobile-nav.open{border-bottom:1px solid var(--lux-line);background:#0b0b09;box-shadow:0 22px 60px rgba(0,0,0,.55)}.mobile-nav a{color:var(--lux-ivory);border-bottom:1px solid rgba(214,174,69,.12)}
.site-search-trigger{border-color:var(--lux-line);background:#11110f;color:var(--lux-gold-light)}

body .home-hero,body .page-hero,body .couple-hero{position:relative;background:radial-gradient(circle at 78% 18%,rgba(214,174,69,.19),transparent 30%),radial-gradient(circle at 16% 85%,rgba(158,113,27,.12),transparent 32%),linear-gradient(135deg,#17150f 0%,#090908 48%,#030303 100%);color:var(--lux-ivory)}
body .home-hero::before,body .page-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 58%,rgba(243,212,122,.045) 58% 58.15%,transparent 58.15%)}
body .hero>*{position:relative;z-index:1}
body .hero-copy>p:not(.kicker),body .couple-hero .hero-copy>p:not(.kicker),body .female-hero .hero-copy>p:not(.kicker){color:var(--lux-muted)}
body .hero h1{font-weight:500!important;letter-spacing:-.047em}body em{color:var(--lux-gold-light)}
.kicker{color:var(--lux-gold-light);font-family:"Manrope",system-ui,sans-serif;font-weight:700;letter-spacing:.28em}
.hero-facts>*{border-color:var(--lux-line);background:rgba(255,255,255,.045);color:var(--lux-ivory)}.hero-facts strong{background:linear-gradient(135deg,var(--lux-gold-light),var(--lux-gold-deep));color:#080806}

body .section{background:linear-gradient(180deg,#11110f 0%,#0b0b09 100%);color:var(--lux-ivory);border-top:1px solid rgba(214,174,69,.08)}
body .section:nth-of-type(even){background:linear-gradient(180deg,#090908,#12110e)}
body .section-head>p,body .section p,body .collection-note,body .form-intro,body .dress-result-status,body .couple-detail-intro,body .location-album-copy,body .resort-album-copy{color:var(--lux-muted)}
body .section-head h2{color:var(--lux-ivory)}
body .section-head h2 em{color:var(--lux-gold-light)}

body .btn{min-height:52px;border-radius:4px;font-family:"Manrope",system-ui,sans-serif;font-weight:700;letter-spacing:.12em;text-transform:uppercase;box-shadow:none}
body .primary,body .light{border-color:var(--lux-gold-light);background:linear-gradient(135deg,var(--lux-gold-light),#c69832 55%,var(--lux-gold-deep));color:#080806;box-shadow:0 13px 32px rgba(214,174,69,.18)}
body .primary:hover,body .light:hover{box-shadow:0 17px 38px rgba(214,174,69,.3)}
body .secondary{border-color:var(--lux-line);background:rgba(255,255,255,.025);color:var(--lux-ivory)}body .secondary:hover{border-color:var(--lux-gold-light);background:rgba(214,174,69,.09);color:var(--lux-gold-light)}

body .service-card{border-color:var(--lux-line);border-radius:14px;background:linear-gradient(155deg,#1b1913,#0e0e0c);color:var(--lux-ivory);box-shadow:0 18px 48px rgba(0,0,0,.25)}
body .service-card:nth-child(odd){background:linear-gradient(145deg,#f0d27b,#c6952f 58%,#9f7019);color:#090806}
body .service-card:nth-child(even){background:linear-gradient(145deg,#1c1a14,#090909);color:var(--lux-ivory)}
body .service-card:nth-child(odd)>b,body .service-card:nth-child(odd) p{color:rgba(9,8,6,.68)}body .service-card:nth-child(even)>b,body .service-card:nth-child(even) p{color:var(--lux-muted)}
body .service-card:nth-child(odd) .icon,body .service-card:nth-child(odd) i{color:#090806}body .service-card:nth-child(even) .icon,body .service-card:nth-child(even) i{color:var(--lux-gold-light)}

body .story,body .booking-process,body .outfit-categories,body .jeep-gallery-section{background:radial-gradient(circle at 18% 10%,rgba(214,174,69,.13),transparent 28%),linear-gradient(145deg,#12110d,#050505);color:var(--lux-ivory)}
body .story-copy li{border-bottom-color:var(--lux-line)}body .story-copy li span{color:var(--lux-gold-light)}body .truth-note{color:var(--lux-muted)}
body .cta{background:linear-gradient(125deg,#9c6d17 0%,#d6ae45 38%,#f0d27b 58%,#b78121 100%);color:#080806;border-top:0}
body .cta .kicker,body .cta p,body .jeep-cta>p:not(.kicker),body .female-cta>p:not(.kicker){color:rgba(8,8,6,.72)}
body .cta em{color:#080806}
body footer{border-top:1px solid var(--lux-line);background:#050505;color:var(--lux-muted)}body footer .brand{color:var(--lux-ivory)}body footer a{color:var(--lux-gold-light)}

body :is(.info-box,form,.category-card,.dress-card,.female-tier-card,.couple-inclusion-card,.couple-detail-panel,.route-panel,.jeep-detail-card,.day-tour-panel,.day-tour-inclusions article,.silk-road-package-panel,.photo-package-feature,.album-empty-state,.dress-search-panel,.dress-no-results,.outfit-photo-card,.resort-location-card,.location-gallery-noscript){border-color:var(--lux-line);background:linear-gradient(155deg,var(--lux-panel-2),var(--lux-panel));color:var(--lux-ivory);box-shadow:var(--lux-shadow)}
body :is(.info-box,.category-card,.dress-card,.female-tier-card,.couple-inclusion-card,.couple-detail-panel,.route-panel,.jeep-detail-card,.day-tour-panel,.day-tour-inclusions article,.silk-road-package-panel,.photo-package-feature,.album-empty-state,.outfit-photo-card,.resort-location-card) :is(p,small){color:var(--lux-muted)}
body :is(.details li,.route-list li,.jeep-detail-card li,.couple-detail-list li,.couple-cost-list li,.day-tour-price-list span){border-bottom-color:var(--lux-line)}
body .label,body .dress-color-tag,body .resort-hot-tag{background:linear-gradient(135deg,var(--lux-gold-light),var(--lux-gold-deep));color:#080806}
body .needed{color:var(--lux-gold-light)}
body input,body select,body textarea{border-color:var(--lux-line);background:#090908;color:var(--lux-ivory)}body select option{background:#0b0b09;color:var(--lux-ivory)}body input::placeholder,body textarea::placeholder{color:#8f8676}body input:focus,body select:focus,body textarea:focus{border-color:var(--lux-gold-light);box-shadow:0 0 0 3px rgba(214,174,69,.13)}
body .check,body .form-note{color:var(--lux-muted)}body .form-note{background:#171611}body .success{background:#1d2418;color:#d6e7c6}
body .map{border:1px solid var(--lux-line);filter:grayscale(.25) sepia(.28) contrast(1.04)}

body .category-art{background:linear-gradient(145deg,#e8c86d,#a7771d);color:#090806}body .category-card:nth-child(2n) .category-art{background:linear-gradient(145deg,#1d1b15,#050505);color:var(--lux-gold-light)}
body .category-card h3,body .dress-card h3,body .outfit-photo-copy strong{color:var(--lux-ivory)}
body .dress-search-panel,body .dress-no-results{background:linear-gradient(145deg,#171611,#0b0b09)}
body .dress-filter{border-color:var(--lux-line);background:#11110f;color:var(--lux-ivory)}body .dress-filter:hover,body .dress-filter.active{border-color:var(--lux-gold-light);background:linear-gradient(135deg,var(--lux-gold-light),var(--lux-gold-deep));color:#080806}
body .dress-search-clear,body .site-search-clear{background:var(--lux-gold);color:#080806}
body .outfit-category-card{border-color:var(--lux-line);background:linear-gradient(145deg,#191812,#090909);color:var(--lux-ivory)}
body .outfit-category-card:nth-child(3n+2){border-color:var(--lux-gold-light);background:linear-gradient(145deg,#ecd177,#a9761c);color:#080806}
body .outfit-category-card p{color:var(--lux-muted)}body .outfit-category-card:nth-child(3n+2) p{color:rgba(8,8,6,.7)}
body .outfit-photo-copy{background:#11110f}body .outfit-photo-copy small,body .outfit-photo-copy b{color:var(--lux-gold-light)}body .outfit-photo-copy>span{color:var(--lux-muted)}

body .service-visual,body .cover-visual,body .story-photo,body .jeep-gallery figure,body .couple-gallery figure,body .resort-gallery figure{border:1px solid var(--lux-line);background:#0b0b09;box-shadow:var(--lux-shadow)}
body .cover-visual figcaption,body .service-visual figcaption,body .story-photo figcaption,body .jeep-gallery figcaption,body .couple-gallery figcaption{background:rgba(5,5,5,.9);color:var(--lux-gold-light)}
body .album-monogram{border:1px solid var(--lux-line);background:radial-gradient(circle at 50% 30%,#282114,#080808 68%);color:var(--lux-gold-light);box-shadow:var(--lux-shadow)}
body .photo-lightbox{border:1px solid var(--lux-line);background:#050505}body .photo-lightbox-close{background:var(--lux-gold);color:#080806}

/* Makeup Artist portfolio */
.makeup-hero{align-items:stretch}
.makeup-hero-photo{position:relative;min-height:620px;margin:0;overflow:hidden;border:1px solid var(--lux-line);border-radius:280px 280px 22px 22px;background:#090909}
.makeup-hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(0,0,0,.72))}
.makeup-hero-photo img{width:100%;height:100%;min-height:620px;object-fit:cover;object-position:center top}
.makeup-hero-photo figcaption{position:absolute;z-index:1;right:24px;bottom:22px;left:24px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.12em;text-align:center;text-transform:uppercase}
.makeup-album{background:linear-gradient(180deg,rgba(240,170,34,.04),transparent 30%)}
.makeup-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.makeup-photo{position:relative;min-width:0;padding:0;overflow:hidden;border:1px solid rgba(240,170,34,.24);border-radius:18px;background:#090909;color:#fff;cursor:zoom-in;text-align:left;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.makeup-photo:hover{transform:translateY(-4px);border-color:rgba(240,170,34,.68);box-shadow:0 18px 44px rgba(0,0,0,.25)}
.makeup-photo:focus-visible{outline:3px solid var(--lux-gold);outline-offset:3px}
.makeup-photo img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center top;transition:transform .35s ease}
.makeup-photo:hover img{transform:scale(1.025)}
@media(max-width:980px){.makeup-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.makeup-hero-photo,.makeup-hero-photo img{min-height:520px}}
@media(max-width:720px){.makeup-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.makeup-hero-photo,.makeup-hero-photo img{min-height:480px}.makeup-photo{border-radius:14px}}

body .tour-options,body .jeep-times,body .jeep-locations,body .jeep-extras,body .international-tour{background:linear-gradient(180deg,#11110f,#080807);color:var(--lux-ivory)}
body .tour-choice-card{border-color:var(--lux-line);background:linear-gradient(150deg,#1c1a14,#0a0a09);color:var(--lux-ivory);box-shadow:var(--lux-shadow)}body .tour-choice-card--dark{background:radial-gradient(circle at 80% 0,rgba(214,174,69,.14),transparent 34%),#070706}body .tour-choice-card>p:not(.kicker),body .tour-choice-card--dark>p:not(.kicker){color:var(--lux-muted)}body .tour-choice-card h3 em,body .tour-choice-card>b,body .tour-choice-number{color:var(--lux-gold-light)}
body .tour-time-card{border-color:var(--lux-line);background:linear-gradient(145deg,#1a1914,#0d0d0b);color:var(--lux-ivory)}body .tour-time-card:nth-child(1){background:linear-gradient(145deg,#ecd177,#aa781c);color:#080806}body .tour-time-card:nth-child(2){background:linear-gradient(145deg,#1d1b15,#0b0b09);color:var(--lux-ivory)}body .tour-time-card:nth-child(3){background:#050505;color:var(--lux-ivory)}body .tour-time-card:nth-child(1) .kicker{color:#080806}
body .jeep-price-strip{background:linear-gradient(120deg,#9e711b,#e4c466 48%,#ae7b1e);color:#080806;box-shadow:0 18px 44px rgba(0,0,0,.3)}
body .route-panel--main,body .jeep-detail-card--dark,body .couple-inclusion-card--dark{background:radial-gradient(circle at 90% 0,rgba(214,174,69,.12),transparent 32%),#070706;color:var(--lux-ivory)}
body .route-list small,body .route-panel--main .route-list small,body .jeep-detail-card p,body .jeep-detail-card--dark p,body .jeep-detail-card li>span,body .jeep-detail-card--dark li>span{color:var(--lux-muted)}
body .jeep-route-note,body .service-note,body .tour-caveat,body .tour-formula{border-left-color:var(--lux-gold);background:#1a1811;color:var(--lux-muted)}
body .day-tour-times article{border-color:var(--lux-line);background:#12110e;color:var(--lux-ivory)}body .day-tour-times article.popular{background:linear-gradient(135deg,var(--lux-gold-light),var(--lux-gold-deep));color:#080806}
body .photo-package-international{border-color:var(--lux-line);background:radial-gradient(circle at 80% 0,rgba(214,174,69,.15),transparent 30%),#050505;color:var(--lux-ivory)}body .photo-package-international p{color:var(--lux-muted)}body .international-prices span{border-color:var(--lux-line);background:#11110f}body .international-prices b{color:var(--lux-gold-light)}body .photo-package-international .tour-formula{background:linear-gradient(135deg,var(--lux-gold-light),var(--lux-gold-deep));color:#080806}

body .couple-package,body .female-pricing,body .female-details,body .couple-details{background:linear-gradient(180deg,#11110f,#080807);color:var(--lux-ivory)}
body .couple-price-card,body .family-price-card,body .female-hero-prices,body .female-fixed-rate,body .female-location-policy,body .female-transport-note,body .couple-policy,body .couple-transport-note{border-color:var(--lux-line);background:linear-gradient(145deg,#1a1914,#0a0a09);color:var(--lux-ivory)}
body .female-package-banner{border-color:var(--lux-line);background:#0b0b09;color:var(--lux-ivory);box-shadow:var(--lux-shadow)}body .female-package-banner-copy{background:radial-gradient(circle at 90% 10%,rgba(214,174,69,.15),transparent 28%),#0b0b09}body .female-package-list li{border-bottom-color:var(--lux-line)}
body .couple-album-filter{border-color:var(--lux-line);background:#11110f;color:var(--lux-ivory)}body .couple-album-filter:hover,body .couple-album-filter.active{border-color:var(--lux-gold-light);background:linear-gradient(135deg,var(--lux-gold-light),var(--lux-gold-deep));color:#080806}body .couple-album-status,body .female-gallery-hint{color:var(--lux-muted)}
body .silk-road-rate-grid article,body .silk-road-detail-grid article{border-color:var(--lux-line);background:#11110f;color:var(--lux-ivory)}body .silk-road-package-panel .section-head>p{color:var(--lux-muted)}

body .location-album-page,body .resort-album-page{background:radial-gradient(circle at 85% 5%,rgba(214,174,69,.12),transparent 25%),var(--lux-black);color:var(--lux-ivory)}body .location-album-back{color:var(--lux-gold-light)}body .resort-filter-title,body .outfit-filter-heading{color:var(--lux-gold-light)}
body .site-search-dialog{border:1px solid var(--lux-line);background:#0b0b09;color:var(--lux-ivory);box-shadow:0 34px 100px rgba(0,0,0,.68)}body .site-search-intro,body .site-search-status{color:var(--lux-muted)}body .site-search-close{border-color:var(--lux-line);background:var(--lux-gold);color:#080806}body .site-search-shortcuts button{border-color:var(--lux-line);background:#15140f;color:var(--lux-ivory)}body .site-search-shortcuts button:hover{border-color:var(--lux-gold-light);background:var(--lux-gold);color:#080806}body .site-search-result{border-color:var(--lux-line);background:#12110e;color:var(--lux-ivory)}body .site-search-result-type,body .site-search-result-arrow{color:var(--lux-gold-light)}body .site-search-result-copy small{color:var(--lux-muted)}body .site-search-empty{border-color:var(--lux-line);background:#12110e}body .site-search-empty span{color:var(--lux-muted)}body .site-search-empty a{background:var(--lux-gold);color:#080806}

@media(max-width:600px){body .btn{border-radius:4px}.desktop-nav a.active::after{display:none}body .section{background:#0c0c0a}body .service-card{min-height:255px}.topbar{background:rgba(5,5,5,.96)}}

/* Homepage featured service slider */
body .home-hero{grid-template-columns:minmax(310px,.72fr) minmax(0,1.28fr);gap:52px;padding-top:74px;padding-bottom:74px}
.home-slider{position:relative;min-width:0;aspect-ratio:1.38/1;overflow:hidden;border:1px solid var(--lux-line);border-radius:22px;background:#050505;box-shadow:0 34px 90px rgba(0,0,0,.54);isolation:isolate}
.home-slider-track,.home-slide{position:absolute;inset:0}
.home-slide{margin:0;opacity:0;visibility:hidden;transform:scale(1.035);transition:opacity .75s ease,visibility .75s ease,transform 6.5s ease;pointer-events:none}
.home-slide.active{opacity:1;visibility:visible;transform:scale(1);pointer-events:auto;z-index:1}
.home-slide img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.home-slide-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,3,3,.88) 0%,rgba(3,3,3,.6) 38%,rgba(3,3,3,.08) 76%),linear-gradient(0deg,rgba(0,0,0,.46),transparent 48%)}
.home-slide-shade--right{background:linear-gradient(270deg,rgba(3,3,3,.89) 0%,rgba(3,3,3,.59) 38%,rgba(3,3,3,.06) 77%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 48%)}
.home-slide-copy{position:absolute;z-index:2;left:clamp(24px,4vw,52px);bottom:clamp(58px,8vw,92px);width:min(56%,510px);color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.45)}
.home-slide-copy--right{left:auto;right:clamp(24px,4vw,52px);text-align:right}
.home-slide-copy .kicker{margin-bottom:10px;color:var(--lux-gold-light);font-size:9px}
.home-slide-copy h2{margin:0;color:#fff;font-size:clamp(36px,4.1vw,58px);line-height:.94;letter-spacing:-.045em}
.home-slide-copy>p:not(.kicker){margin:16px 0;color:rgba(255,255,255,.78);font-size:13px;line-height:1.55}
.home-slide-copy a{display:inline-flex;align-items:center;gap:7px;padding-bottom:5px;border-bottom:1px solid var(--lux-gold-light);color:var(--lux-gold-light);text-decoration:none;font-size:9px;font-weight:700;letter-spacing:.12em}
.home-slide-copy a:hover{color:#fff;border-color:#fff}
.home-slide-count{position:absolute;z-index:2;top:22px;right:24px;color:rgba(255,255,255,.74);font-size:9px;font-weight:700;letter-spacing:.16em}
.home-slider-arrow{position:absolute;z-index:4;top:50%;width:46px;height:46px;display:grid;place-items:center;transform:translateY(-50%);border:1px solid rgba(243,212,122,.5);border-radius:50%;background:rgba(5,5,5,.72);color:var(--lux-gold-light);cursor:pointer;font-size:20px;backdrop-filter:blur(8px);transition:background .2s ease,color .2s ease,transform .2s ease}
.home-slider-arrow:hover{background:var(--lux-gold);color:#080806;transform:translateY(-50%) scale(1.05)}.home-slider-prev{left:16px}.home-slider-next{right:16px}
.home-slider-dots{position:absolute;z-index:4;left:50%;bottom:24px;display:flex;align-items:center;gap:7px;transform:translateX(-50%)}
.home-slider-dots button{width:7px;height:7px;padding:0;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:transparent;cursor:pointer;transition:width .25s ease,border-radius .25s ease,background .25s ease}
.home-slider-dots button[aria-selected="true"]{width:28px;border-color:var(--lux-gold-light);border-radius:99px;background:var(--lux-gold-light)}
.home-slider-pause{position:absolute;z-index:4;left:24px;bottom:20px;padding:7px 9px;border:0;background:rgba(5,5,5,.7);color:rgba(255,255,255,.75);cursor:pointer;font-size:8px;font-weight:700;letter-spacing:.1em}.home-slider-pause:hover{color:var(--lux-gold-light)}.home-slider-pause .play-label,.home-slider.is-paused .pause-label{display:none}.home-slider.is-paused .play-label{display:inline}
.home-slider :is(button,a):focus-visible{outline:3px solid var(--lux-gold-light);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.home-slide{transition:none;transform:none}.home-slider-arrow,.home-slider-dots button{transition:none}}
@media(max-width:980px){body .home-hero{grid-template-columns:1fr;gap:42px}.home-slider{width:100%;aspect-ratio:16/10}.home-slide-copy{width:min(55%,520px)}}
@media(max-width:600px){body .home-hero{padding-top:56px;padding-bottom:34px;gap:32px}.home-slider{aspect-ratio:4/5;border-radius:14px}.home-slide-copy,.home-slide-copy--right{left:20px;right:20px;bottom:72px;width:auto;text-align:left}.home-slide-shade,.home-slide-shade--right{background:linear-gradient(0deg,rgba(3,3,3,.94) 0%,rgba(3,3,3,.56) 44%,rgba(3,3,3,.05) 78%)}.home-slide-copy h2{font-size:39px}.home-slide-copy>p:not(.kicker){margin:12px 0;font-size:12px}.home-slider-arrow{top:42%;width:40px;height:40px}.home-slider-prev{left:10px}.home-slider-next{right:10px}.home-slider-dots{bottom:24px}.home-slider-pause{left:16px;bottom:18px}.home-slide-count{top:15px;right:16px}}

/* Full-vehicle image in the Why Doli House section */
body .story-photo--panorama{min-height:0;aspect-ratio:3/2;background:#050505}
body .story-photo--panorama img{width:100%;height:100%;min-height:0;object-fit:contain;object-position:center}
@media(max-width:600px){body .story-photo--panorama,body .story-photo--panorama img{min-height:0;aspect-ratio:3/2}}

/* Compact homepage photo mosaic */
body .story{padding-bottom:48px}
.home-moments{padding:0 max(24px,calc((100vw - 1180px)/2)) 76px;background:radial-gradient(circle at 82% 0,rgba(214,174,69,.1),transparent 30%),#050505;color:var(--lux-ivory)}
.home-moments-head{padding:10px 0 28px;display:grid;grid-template-columns:1fr .72fr;align-items:end;gap:64px;border-top:1px solid rgba(214,174,69,.18)}
.home-moments-head>div{padding-top:28px}.home-moments-head .kicker{margin-bottom:10px}.home-moments-head h2{font-size:clamp(34px,4vw,54px)}.home-moments-head>p{max-width:430px;margin:0;color:var(--lux-muted);font-size:13px}
.home-moments-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.home-moment{position:relative;aspect-ratio:3/2;overflow:hidden;border:1px solid rgba(214,174,69,.2);border-radius:8px;background:#11110f;color:#fff;text-decoration:none;isolation:isolate}
.home-moment::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 48%);opacity:.82;transition:opacity .3s ease}
.home-moment img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .6s ease,filter .3s ease}
.home-moment>span{position:absolute;z-index:2;left:14px;right:14px;bottom:11px;color:#fff;font-family:"Manrope",system-ui,sans-serif;font-size:9px;letter-spacing:.13em;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,.7)}
.home-moment>span b{font-weight:700}.home-moment:hover img{transform:scale(1.045);filter:saturate(1.08)}.home-moment:hover::after{opacity:1}.home-moment:focus-visible{outline:3px solid var(--lux-gold-light);outline-offset:3px}
@media(max-width:980px){.home-moments-head{grid-template-columns:1fr;gap:12px}.home-moments-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body .story{padding-bottom:38px}.home-moments{padding:0 14px 54px}.home-moments-head{padding-bottom:22px}.home-moments-head>div{padding-top:22px}.home-moments-head h2{font-size:38px}.home-moments-head>p{font-size:12px}.home-moments-grid{gap:6px}.home-moment{border-radius:5px}.home-moment>span{left:9px;right:9px;bottom:7px;font-size:7px;letter-spacing:.09em}}

/* Homepage service album covers */
body .service-card--with-cover{min-height:0;padding:0;overflow:hidden;display:block;border-radius:12px;background:#0d0d0b;color:var(--lux-ivory);box-shadow:0 20px 56px rgba(0,0,0,.34);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
body .service-card--with-cover:nth-child(n){background:#0d0d0b;color:var(--lux-ivory)}
body .service-card--with-cover:hover{transform:translateY(-7px);border-color:rgba(243,212,122,.66);box-shadow:0 28px 68px rgba(0,0,0,.48)}
body .service-card--with-cover:focus-visible{outline:3px solid var(--lux-gold-light);outline-offset:4px}
.service-card-cover{position:relative;width:100%;aspect-ratio:1/1;margin:0;overflow:hidden;border-bottom:1px solid var(--lux-line);background:#11110f}
.service-card-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.58));pointer-events:none}
.service-card-cover img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .65s ease,filter .3s ease}
.service-card-cover--outfit img{object-position:center 59%}.service-card-cover--photoshoot img{object-position:center 63%}.service-card-cover--tour img{object-position:center 58%}
.service-card--with-cover:hover .service-card-cover img{transform:scale(1.045);filter:saturate(1.06)}
.service-card-cover figcaption{position:absolute;z-index:2;left:12px;bottom:10px;padding:5px 8px;border:1px solid rgba(243,212,122,.35);border-radius:3px;background:rgba(5,5,5,.74);color:var(--lux-gold-light);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px)}
.service-card-cover--pending{display:grid;place-content:center;text-align:center;background:radial-gradient(circle at 50% 42%,rgba(243,212,122,.17),transparent 25%),linear-gradient(145deg,#1b1913,#070706)}
.service-card-cover--pending::before{content:"";position:absolute;inset:16px;border:1px solid rgba(214,174,69,.27)}
.service-card-cover--pending::after{background:linear-gradient(135deg,transparent 0 49.8%,rgba(214,174,69,.13) 50%,transparent 50.2%)}
.service-card-cover--pending>*{position:relative;z-index:2}.service-card-cover--pending strong{color:var(--lux-gold-light);font:500 clamp(72px,7vw,104px) "Manrope",sans-serif;line-height:.75}.service-card-cover--pending>span{margin-top:15px;color:var(--lux-ivory);font-size:13px;font-weight:700;letter-spacing:.3em}.service-card-cover--pending small{margin-top:10px;color:var(--lux-muted);font-size:10px;font-weight:700;letter-spacing:.1em}
.service-card-copy{min-height:210px;padding:22px 20px 20px;display:flex;flex-direction:column}
.service-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--lux-muted);font-size:10px;font-weight:700;letter-spacing:.12em}.service-card-meta b{color:var(--lux-gold-light);font:italic 16px "Manrope",sans-serif}.service-card-copy h3{margin:13px 0 9px;color:var(--lux-ivory);font-size:27px;line-height:1}.service-card-copy p{margin:0;color:var(--lux-muted)!important;font-size:14px;line-height:1.55}.service-card-link{margin-top:auto;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--lux-gold-light);font-size:11px;font-weight:700;letter-spacing:.09em}.service-card-link i{color:var(--lux-gold-light)!important;font-size:18px;font-style:normal;transition:transform .25s ease}.service-card--with-cover:hover .service-card-link i{transform:translateX(4px)}
@media(max-width:600px){body .service-card--with-cover{border-radius:10px}.service-card-copy{min-height:185px;padding:20px}.service-card-copy h3{font-size:30px}.service-card-copy p{font-size:15px}.service-card-cover figcaption{font-size:9px}}
.makeup-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.makeup-service-grid .info-box{display:flex;flex-direction:column;align-items:flex-start}.makeup-service-link{margin-top:auto;padding-top:1.5rem;color:inherit;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-decoration:none}.makeup-service-link:hover{text-decoration:underline}@media(max-width:760px){.makeup-service-grid{grid-template-columns:1fr}}

/* Home advantages: bright yellow with black text */
body .home-advantages{display:grid;grid-template-columns:minmax(230px,.76fr) minmax(0,1.5fr);gap:clamp(35px,6vw,92px);background:#ffd438!important;color:#0b0b0b!important}
.home-advantages .kicker,.home-advantages h2,.home-advantages h2 em,.home-advantages h3,.home-advantages p,.home-advantages .advantages-number{color:#0b0b0b!important}
.advantages-heading{position:sticky;top:110px;align-self:start}.advantages-heading h2{font-size:clamp(42px,5vw,70px)}
.advantages-heading>p:nth-last-child(2){max-width:400px;margin:22px 0 0;font-size:16px;line-height:1.65}.advantages-photo{margin:28px 0 0;overflow:hidden;aspect-ratio:1.65}.advantages-photo img{display:block;width:100%;height:100%;object-fit:cover}
.advantages-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px}.advantages-grid article{padding:24px 0 28px;border-top:1px solid rgba(0,0,0,.48)}.advantages-grid article:last-child{grid-column:1/-1}.advantages-number{display:block;margin-bottom:25px;font-size:12px;font-weight:700;letter-spacing:.14em}.advantages-grid h3{margin:0 0 12px;font:700 clamp(21px,2vw,27px)/1.22 "Manrope",sans-serif;letter-spacing:-.035em}.advantages-grid p{max-width:450px;margin:0;font-size:14px;line-height:1.65}
@media(max-width:900px){body .home-advantages{grid-template-columns:1fr}.advantages-heading{position:static}.advantages-grid{gap:0 20px}}@media(max-width:600px){.advantages-grid{grid-template-columns:1fr}.advantages-grid article:last-child{grid-column:auto}.advantages-grid article{padding:20px 0 24px}.advantages-number{margin-bottom:14px}}
.home-cta h2{max-width:1200px;margin-inline:auto;font-size:clamp(36px,4.3vw,62px)!important;line-height:1.16;overflow-wrap:break-word}
.footer-tagline{display:grid;gap:7px;margin-top:22px;color:#fff}.footer-tagline strong{font-size:20px;letter-spacing:.12em;line-height:1.3}.footer-tagline .footer-slogan{font-size:16px;font-weight:700;letter-spacing:.03em;color:#ffd438}.footer-tagline .footer-services{font-size:16px;color:#d5d1c8}
.footer-story{max-width:440px;margin-top:22px;color:#d5d1c8;font-size:16px;line-height:1.65}.footer-story p{margin:0 0 13px}.footer-story strong{color:#fff;font-weight:700}

/* Direct album navigation by shooting location */
.photoshoot-location-shortcuts{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.6fr);gap:clamp(30px,5vw,80px);background:#ffd438;color:#0b0b0b;scroll-margin-top:80px}.photoshoot-location-shortcuts .kicker,.photoshoot-location-shortcuts h2,.photoshoot-location-shortcuts h2 em,.photoshoot-location-shortcuts h3,.photoshoot-location-shortcuts p{color:#0b0b0b}.location-shortcuts-intro>p:last-child{max-width:360px;margin-top:23px}.location-shortcuts-groups{display:grid;grid-template-columns:1fr 1fr;gap:26px}.location-shortcuts-group{display:flex;flex-direction:column;min-width:0}.location-shortcuts-group h3{margin:0 0 14px;font:700 18px "Manrope",sans-serif}.location-shortcuts-group a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid rgba(0,0,0,.35);color:#0b0b0b;text-decoration:none;font-size:14px;font-weight:600;line-height:1.3}.location-shortcuts-group a:first-of-type{border-top:1px solid rgba(0,0,0,.35)}.location-shortcuts-group a:hover,.location-shortcuts-group a:focus-visible{background:rgba(255,255,255,.25);padding-left:8px}.location-shortcuts-group a b{font-size:17px;flex:none}
@media(max-width:980px){.photoshoot-location-shortcuts{grid-template-columns:1fr}}@media(max-width:600px){.location-shortcuts-groups{grid-template-columns:1fr;gap:32px}}

/* Photoshoot: five location albums. */
.home-photo-shortcuts{margin-top:42px}
.home-photo-shortcuts-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px}
.home-photo-shortcuts-head h3{margin:0;color:#fff;font-size:22px}
.home-photo-shortcuts-head a{color:#ffd438;text-decoration:none;font-size:13px;font-weight:700}
.home-photo-shortcuts-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.home-photo-shortcuts-grid a{position:relative;display:block;overflow:hidden;aspect-ratio:1/1;color:#fff;border:1px solid rgba(255,212,56,.25);text-decoration:none;background:#141414}
.home-photo-shortcuts-grid a:hover{border-color:#ffd438}
.home-photo-shortcuts-grid a:focus-visible{outline:3px solid #ffd438;outline-offset:3px}
.home-photo-shortcuts-grid img{width:100%;height:100%;object-fit:cover;display:block}
.home-photo-shortcuts-grid a>span{position:absolute;inset:auto 0 0;padding:24px 12px 12px;background:linear-gradient(transparent,rgba(0,0,0,.88));font-size:16px;font-weight:700;line-height:1.25}
@media(max-width:850px){.home-photo-shortcuts-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:550px){.home-photo-shortcuts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.home-photo-shortcuts-grid a>span{font-size:14px}.home-photo-shortcuts-head{align-items:start;flex-direction:column}}
.photoshoot-albums{scroll-margin-top:80px}
.photoshoot-album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.photoshoot-album-card{min-width:0;overflow:hidden;border:1px solid rgba(255,212,56,.28);border-radius:18px;background:#151515;color:#fff;text-decoration:none;transition:transform .2s,border-color .2s}
.photoshoot-album-card:hover{transform:translateY(-4px);border-color:#ffd438}
.photoshoot-album-card:focus-visible{outline:3px solid #ffd438;outline-offset:3px}
.photoshoot-album-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.photoshoot-album-title{display:flex;align-items:center;gap:12px;min-height:86px;padding:16px}
.photoshoot-album-title small{color:#ffd438;font-size:14px}.photoshoot-album-title strong{flex:1;font-size:18px;line-height:1.3}.photoshoot-album-title>span:last-child{color:#ffd438;font-size:22px}
@media(max-width:760px){.photoshoot-album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photoshoot-album-title{min-height:80px;padding:11px;gap:7px}.photoshoot-album-title strong{font-size:15px}.photoshoot-album-title small{font-size:12px}}
@media(max-width:390px){.photoshoot-album-title strong{font-size:14px}}

/* Consistent upright sans serif typography across public pages. */
body :is(h1,h2,h3,h4){font-family:"Manrope",Arial,sans-serif!important;font-weight:700!important;line-height:1.16;letter-spacing:-.035em;overflow-wrap:break-word}
body :is(h1,h2,h3,h4) em{font-style:normal}
body .hero h1{font-weight:700!important}

/* One display type treatment for the public site. Gold on black; black on yellow. */
body :is(.hero h1,.section-head h2,.cta h2,.product-detail-copy h1,.product-section-heading h2,.occasion-heading h2,.advantages-heading h2,.location-shortcuts-intro h2){font-family:"Manrope",Arial,sans-serif!important;font-size:clamp(34px,4.8vw,68px);font-weight:700!important;font-style:normal!important;text-transform:uppercase;letter-spacing:-.025em;line-height:1.16;color:#ffd438!important;overflow-wrap:break-word}
body .hero h1{font-size:clamp(42px,5.4vw,76px)}
body :is(.hero h1,.section-head h2,.cta h2,.product-detail-copy h1,.product-section-heading h2,.occasion-heading h2,.advantages-heading h2,.location-shortcuts-intro h2) :is(em,span){color:inherit!important;font-family:inherit!important;font-style:normal!important;font-weight:inherit!important}
body :is(.home-advantages,.photoshoot-location-shortcuts,.cta) :is(h1,h2),body :is(.home-advantages,.photoshoot-location-shortcuts,.cta) :is(h1,h2) :is(em,span),body :is(.tour-options,.international-tour) > .section-head h2,body :is(.tour-options,.international-tour) > .section-head h2 :is(em,span){color:#0b0b0b!important}
@media(max-width:620px){body .hero h1{font-size:clamp(36px,9vw,52px)!important}body :is(.section-head h2,.cta h2,.product-detail-copy h1,.product-section-heading h2,.occasion-heading h2,.advantages-heading h2,.location-shortcuts-intro h2){font-size:clamp(28px,7vw,42px)}}

/* The group photoshoot title remains readable on one line at every width. */
body .group-hero h1.group-single-line{max-width:none;white-space:nowrap;font-size:clamp(19px,2.75vw,39px)!important;letter-spacing:-.03em}
html[data-lang="en"] body .group-hero h1.group-single-line{font-size:clamp(15px,2.3vw,32px)!important}

/* Clickable hierarchy above every public section and product detail. */
.site-breadcrumb{position:relative;z-index:1;background:#0b0b0b;border-bottom:1px solid rgba(255,212,56,.24);color:#ffd438;padding:13px max(22px,calc((100vw - 1400px)/2));font:600 14px/1.5 "Manrope",Arial,sans-serif}
.site-breadcrumb ol{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin:0;padding:0;list-style:none}
.site-breadcrumb li{display:inline-flex;align-items:center;gap:10px;min-width:0}
.site-breadcrumb li+li::before{content:"/";color:#b1a26c}
.site-breadcrumb a{color:#ffd438;text-decoration:none}
.site-breadcrumb a:hover{text-decoration:underline}
.site-breadcrumb a:focus-visible{outline:2px solid #ffd438;outline-offset:3px}
.site-breadcrumb [aria-current="page"]{color:#fff}
@media(max-width:620px){.site-breadcrumb{padding:12px 16px;font-size:12px}}
.cms-album-nav{display:flex;flex-wrap:wrap;gap:10px;padding:16px max(20px,5vw);border-bottom:1px solid #ddd;background:#fff}.cms-album-nav button{border:1px solid #ddd;background:#fff;padding:10px 15px;cursor:pointer;color:#181818}.cms-album-nav button:hover,.cms-album-nav button:focus-visible{border-color:#d9b650;background:#ffd943}
