html{-webkit-text-size-adjust:100%}
body{margin:0;background:#FFF6EA}
a{color:#6F4E37}a:hover{color:#3E2A1D}
.ch *{box-sizing:border-box}
.ch button,.ch input,.ch select{font:inherit}
.ch button{cursor:pointer}
.ch :focus-visible{outline:2px solid #3E2A1D;outline-offset:2px}
.ch .on-dark :focus-visible{outline-color:#FFF6EA}
.ch input::placeholder{color:#7E5A3F}
.ch fieldset label:has(input:focus-visible){outline:2px solid #3E2A1D;outline-offset:2px}
.ch .nav a{color:#3E2A1D;text-decoration:none;position:relative;padding:6px 0}
.ch .nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;background:#A06F45;transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.ch .nav a:hover::after{transform:scaleX(1);transform-origin:left}

/* Glass surfaces */
.ch .glass{background:linear-gradient(150deg,rgba(255,252,246,0.82),rgba(255,244,228,0.56));border:1px solid rgba(255,255,255,0.9);box-shadow:inset 0 1px 0 rgba(255,255,255,0.95),0 14px 34px -16px rgba(111,78,55,0.3),0 0 0 1px rgba(207,162,122,0.14);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%)}
.ch .glass-deep{background:radial-gradient(ellipse at 15% 0%,rgba(255,236,210,0.35),transparent 60%),linear-gradient(160deg,#7E5A3F,#6F4E37);color:#FFF6EA;border:1px solid rgba(255,236,210,0.35);box-shadow:inset 0 1px 1px rgba(255,255,255,0.4),0 18px 36px -16px rgba(87,60,42,0.55)}
.ch .glass-caramel{background:radial-gradient(ellipse at 85% 0%,rgba(255,246,234,0.55),transparent 55%),linear-gradient(150deg,rgba(231,199,161,0.92),rgba(207,162,122,0.88));border:1px solid rgba(255,255,255,0.7);box-shadow:inset 0 1px 0 rgba(255,255,255,0.75),0 20px 40px -18px rgba(111,78,55,0.45);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%)}

/* Background color fields for the glass to pick up */
.ch .orbs{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.ch .orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.7;animation:chDrift 18s ease-in-out infinite alternate}
.ch .orb.b{animation-duration:23s;animation-direction:alternate-reverse}
@keyframes chDrift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(40px,-30px,0) scale(1.08)}}

/* Liquid-glass button hover: highlight follows the pointer */
.ch .lg{position:relative;isolation:isolate;overflow:hidden;transition:transform .5s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease,background-color .25s ease}
.ch .lg::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s ease;background:radial-gradient(140px circle at var(--mx,50%) var(--my,0%),rgba(255,255,255,0.6),rgba(255,255,255,0.14) 45%,transparent 72%)}
.ch .lg::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s ease;box-shadow:inset 0 1px 1px rgba(255,255,255,0.9),inset 0 -1px 1px rgba(255,255,255,0.3),inset 0 0 0 1px rgba(255,255,255,0.35),inset 0 -10px 18px -12px rgba(255,255,255,0.6)}
@media (hover:hover){
.ch .lg:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 14px 30px -12px rgba(87,60,42,0.45),0 2px 6px rgba(87,60,42,0.14)}
.ch .lg:hover::before,.ch .lg:hover::after{opacity:1}
.ch .card:hover{transform:translateY(-6px)}
.ch .card:hover .thumb{transform:scale(1.05)}
}
.ch .lg:active{transform:scale(.96);transition-duration:.12s}
.ch .lg:focus-visible::after{opacity:1}
.ch .card{transition:transform .5s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease}
.ch .thumb{transition:transform .8s cubic-bezier(.22,1,.36,1)}

/* Header entrance */
@keyframes chTop{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:none}}
.ch .top-in{animation:chTop .8s cubic-bezier(.22,1,.36,1) both}

/* Hero slides: the incoming slide slides in from the side you are moving toward */
.ch .hero-stack{display:grid}
.ch .hero-slide{grid-area:1 / 1;opacity:0;visibility:hidden;pointer-events:none}
.ch .hero-slide.on-init,.ch .hero-slide.on-next,.ch .hero-slide.on-prev{opacity:1;visibility:visible;pointer-events:auto}
.ch .hero-slide.out-next,.ch .hero-slide.out-prev{visibility:visible}
.ch .hero-slide.on-next{animation:chInR .9s cubic-bezier(.22,1,.36,1) both}
.ch .hero-slide.on-prev{animation:chInL .9s cubic-bezier(.22,1,.36,1) both}
.ch .hero-slide.out-next{animation:chOutL .55s ease both}
.ch .hero-slide.out-prev{animation:chOutR .55s ease both}
@keyframes chInR{from{opacity:0;transform:translateX(80px)}to{opacity:1;transform:none}}
@keyframes chInL{from{opacity:0;transform:translateX(-80px)}to{opacity:1;transform:none}}
@keyframes chOutL{from{opacity:1;transform:none}to{opacity:0;transform:translateX(-80px)}}
@keyframes chOutR{from{opacity:1;transform:none}to{opacity:0;transform:translateX(80px)}}
.ch .hero-slide .stag>*{animation:chUp .9s cubic-bezier(.22,1,.36,1) both}
.ch .hero-slide .stag>*:nth-child(1){animation-delay:.1s}
.ch .hero-slide .stag>*:nth-child(2){animation-delay:.18s}
.ch .hero-slide .stag>*:nth-child(3){animation-delay:.26s}
.ch .hero-slide .stag>*:nth-child(4){animation-delay:.34s}
.ch .hero-slide .stag>*:nth-child(5){animation-delay:.42s}
@keyframes chUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.ch .emblem{animation:chFloat 7s ease-in-out infinite alternate}
@keyframes chFloat{from{transform:translateY(-8px)}to{transform:translateY(10px)}}

/* Decorated hero: champagne silk, light, glitter, sparkles and droplets */
.ch .bg-silk{background:radial-gradient(ellipse at 18% 22%,#FFFBF4 0%,rgba(255,251,244,0) 45%),radial-gradient(ellipse at 82% 78%,#E6CBA6 0%,rgba(230,203,166,0) 55%),linear-gradient(135deg,#F5E6CF 0%,#EAD3B3 42%,#F6EAD8 68%,#E3C6A2 100%)}
.ch .silk-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.ch .hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;transition:opacity .8s ease}
.ch .hero-bg.off{opacity:0}
.ch .bg-mocha{background:radial-gradient(ellipse at 72% 18%,rgba(255,236,210,0.38),rgba(255,236,210,0) 55%),linear-gradient(160deg,#B48E6C 0%,#8E684A 48%,#5A3F2D 100%)}
.ch .mocha-light{position:absolute;inset:0;background:linear-gradient(115deg,transparent 28%,rgba(255,255,255,0.13) 36%,transparent 44%),linear-gradient(115deg,transparent 52%,rgba(255,255,255,0.08) 58%,transparent 64%)}
.ch .watermark{position:absolute;left:50%;top:10px;transform:translateX(-50%);margin:0;font-family:Montserrat,sans-serif;font-weight:800;font-size:clamp(96px,13.5vw,196px);line-height:1;letter-spacing:-0.02em;white-space:nowrap;background:linear-gradient(180deg,rgba(255,250,242,0.6),rgba(255,250,242,0.06));-webkit-background-clip:text;background-clip:text;color:transparent}
.ch .director-cut{position:absolute;bottom:0;right:max(3%,calc((100% - 1280px) / 2 + 40px));height:94%;width:auto;-webkit-mask-image:linear-gradient(to bottom,#000 72%,transparent 100%),linear-gradient(to right,transparent 0%,#000 16%,#000 84%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,#000 72%,transparent 100%),linear-gradient(to right,transparent 0%,#000 16%,#000 84%,transparent 100%);mask-composite:intersect}
.ch .mocha-left{position:absolute;inset:0;background:linear-gradient(90deg,rgba(62,42,29,0.6) 0%,rgba(62,42,29,0.25) 42%,rgba(62,42,29,0) 62%)}
.ch .mocha-fade{position:absolute;left:0;right:0;bottom:0;height:28%;background:linear-gradient(to top,rgba(74,52,36,0.75),rgba(74,52,36,0))}
.ch .bg-espresso{background:radial-gradient(circle at 78% 38%,rgba(207,162,122,0.38),rgba(207,162,122,0) 46%),radial-gradient(circle at 8% 92%,rgba(160,111,69,0.4),rgba(160,111,69,0) 40%),linear-gradient(150deg,#4E3726 0%,#2E2018 100%)}
.ch .gold-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(231,199,161,0.1) 1px,transparent 1px),linear-gradient(90deg,rgba(231,199,161,0.1) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 70% 45%,#000 0%,transparent 70%);mask-image:radial-gradient(ellipse at 70% 45%,#000 0%,transparent 70%)}
.ch .bg-map{background:radial-gradient(ellipse at 12% 95%,rgba(207,162,122,0.55),rgba(207,162,122,0) 45%),radial-gradient(ellipse at 88% 8%,rgba(231,199,161,0.6),rgba(231,199,161,0) 42%),radial-gradient(ellipse at 60% 60%,rgba(255,246,234,0.9),rgba(255,246,234,0) 60%),#F8EDDD}
.ch .map-veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(250,240,226,0.94) 0%,rgba(250,240,226,0.78) 34%,rgba(250,240,226,0) 56%)}
.ch .tone-light .hero-en{color:#3E2A1D;text-shadow:none;font-size:40px;font-weight:600;letter-spacing:-0.01em}
.ch .hero-en{margin:0;font-family:Montserrat,sans-serif;font-weight:700;font-size:54px;line-height:1;letter-spacing:0.01em;color:#FFFFFF;text-shadow:0 2px 18px rgba(46,32,24,0.35)}
.ch .hero-badge{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:10px 16px;border-radius:16px;border:1px solid rgba(255,246,234,0.55);background:rgba(255,246,234,0.1);color:#FFF6EA;font-size:12px}
.ch .hero-badge b{font-family:Montserrat,sans-serif;font-weight:600;font-size:14px;letter-spacing:0.04em}
.ch .hero-career{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}
.ch .hero-career li{position:relative;padding-left:14px;font-size:15px;line-height:1.5;color:#F7E7CE}
.ch .hero-career li::before{content:"";position:absolute;left:0;top:0.62em;width:5px;height:5px;border-radius:50%;background:#E7C7A1}
/* Text on the dark slides */
.ch .hero-slide.tone-dark .stag>p{color:#F7E7CE!important}
.ch .hero-slide.tone-dark .stag>p.hero-en{color:#FFFFFF!important}
.ch .hero-slide.tone-dark .grad-text{background:linear-gradient(180deg,#FFFFFF 0%,#EFD7B7 100%);-webkit-background-clip:text;background-clip:text}
.ch .hero-slide.tone-dark .hero-cta{background:#FFF6EA!important;color:#3E2A1D!important}
.ch .hero-slide.tone-dark.has-photo h1{font-size:84px!important;line-height:1.1!important}
.ch .tone-dark .dot .bar{background:rgba(255,246,234,0.6)}
.ch .tone-dark .dot.on .bar{background:rgba(255,246,234,0.28)}
.ch .tone-dark .dot .fill{background:#FFF6EA}
.ch .silk{animation:chSilk 16s ease-in-out infinite alternate}
@keyframes chSilk{from{transform:translate3d(0,0,0) scale(1.02)}to{transform:translate3d(-24px,10px,0) scale(1.06)}}
.ch .glow{position:absolute;inset:0;background:radial-gradient(circle at 16% 18%,rgba(255,255,255,0.85),rgba(255,255,255,0) 30%),radial-gradient(circle at 74% 30%,rgba(255,255,255,0.55),rgba(255,255,255,0) 26%)}
.ch .dust{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,0.95) 1px,transparent 1.7px),radial-gradient(rgba(214,176,128,0.8) 1px,transparent 1.7px);background-size:23px 29px,37px 31px;background-position:0 0,11px 7px;-webkit-mask-image:radial-gradient(ellipse at 88% 14%,#000 0%,transparent 34%),radial-gradient(ellipse at 8% 88%,#000 0%,transparent 30%);mask-image:radial-gradient(ellipse at 88% 14%,#000 0%,transparent 34%),radial-gradient(ellipse at 8% 88%,#000 0%,transparent 30%)}
.ch .spark{position:absolute;filter:drop-shadow(0 0 6px rgba(255,255,255,0.95)) drop-shadow(0 0 2px rgba(214,176,128,0.9));animation:chTwinkle 3.4s ease-in-out infinite}
@keyframes chTwinkle{0%,100%{opacity:.35;transform:scale(.7) rotate(0deg)}50%{opacity:1;transform:scale(1) rotate(20deg)}}
.ch .drop{position:absolute;border-radius:50%;background:radial-gradient(circle at 34% 30%,rgba(255,255,255,0.98) 0 9%,rgba(255,255,255,0.3) 22%,rgba(255,255,255,0.06) 52%,rgba(160,111,69,0.16) 76%,rgba(255,255,255,0.75) 92%,rgba(255,255,255,0) 100%);box-shadow:0 8px 14px -4px rgba(111,78,55,0.25)}
.ch .serif{font-family:'Nanum Myeongjo',Pretendard,serif}
.ch .grad-text{background:linear-gradient(180deg,#80593A 0%,#3E2A1D 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important}

/* Slide 1: open event, same look as the Instagram feed (sky blue to mint, deep teal type, mint marker) */
.ch .bg-aqua{background:radial-gradient(ellipse at 14% 12%,#FFFFFF 0%,rgba(255,255,255,0) 40%),radial-gradient(ellipse at 88% 92%,#AEE9D6 0%,rgba(174,233,214,0) 55%),linear-gradient(160deg,#D8ECFA 0%,#C3E2F6 38%,#C6EBE6 70%,#B3E7D6 100%)}
.ch .bg-aqua .silk path[stroke="#C9A27A"]{stroke:#8FD6E0}
.ch .bg-aqua .dust{background-image:radial-gradient(rgba(255,255,255,0.95) 1px,transparent 1.7px),radial-gradient(rgba(120,200,210,0.8) 1px,transparent 1.7px)}
.ch .bg-aqua .spark{filter:drop-shadow(0 0 6px rgba(255,255,255,0.95)) drop-shadow(0 0 2px rgba(80,170,190,0.9))}
.ch .bg-aqua .drop{background:radial-gradient(circle at 34% 30%,rgba(255,255,255,0.98) 0 9%,rgba(255,255,255,0.3) 22%,rgba(255,255,255,0.06) 52%,rgba(60,150,170,0.16) 76%,rgba(255,255,255,0.75) 92%,rgba(255,255,255,0) 100%);box-shadow:0 8px 14px -4px rgba(29,75,91,0.22)}
.ch .hero-slide.tone-aqua .stag>p:first-of-type{color:#2E6B7A!important}
.ch .hero-slide.tone-aqua .grad-text{background:linear-gradient(180deg,#2C6474 0%,#163F4D 100%);-webkit-background-clip:text;background-clip:text}
.ch .hero-slide.tone-aqua .hero-cta{background:#1D4B5B!important;color:#FFFFFF!important;box-shadow:inset 0 1px 1px rgba(255,255,255,0.3),0 12px 24px -12px rgba(29,75,91,0.6)!important}
.ch .hero-hl{margin:0;font-family:'Nanum Myeongjo',Pretendard,serif;font-size:30px;font-weight:800;line-height:1.3;color:#163F4D}
.ch .hero-hl span{background:linear-gradient(transparent 58%,rgba(126,224,186,0.85) 58%,rgba(126,224,186,0.85) 92%,transparent 92%);padding:0 4px}
.ch .hero-hl b{font-family:Montserrat,sans-serif;font-size:1.3em;font-weight:600;color:#1F5E70}
.ch .hero-date{display:inline-flex;align-self:flex-start;align-items:center;height:40px;padding:0 22px;border-radius:9999px;border:1px solid #2E6B7A;background:rgba(255,255,255,0.55);font-size:16px;font-weight:600;color:#1D4B5B}
.ch .tone-aqua .price-row span,.ch .tone-aqua .price-row s{color:#2E6B7A!important}
.ch .tone-aqua .hero-price{color:#1F5E70!important}
.ch .tone-aqua .dot .bar{background:#4A93A3}
.ch .tone-aqua .dot.on .bar{background:rgba(29,75,91,0.22)}
.ch .tone-aqua .dot .fill{background:#1D4B5B}
.ch .tone-aqua .hero-arrow{color:#1D4B5B!important}
.ch .aqua-card{width:440px;padding:26px 24px 22px;border-radius:28px;background:linear-gradient(160deg,rgba(255,255,255,0.78),rgba(240,250,252,0.55));border:1px solid rgba(255,255,255,0.95);box-shadow:inset 0 1px 0 #fff,0 20px 40px -20px rgba(29,75,91,0.4);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#163F4D}
.ch .aqua-pill{display:inline-block;padding:5px 14px;border-radius:9999px;background:#1D4B5B;color:#fff;font-size:13px;font-weight:700}
.ch .aqua-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.ch .aqua-grid>div{padding:14px 10px 12px;border-radius:16px;background:rgba(255,255,255,0.72);border:1px solid rgba(46,107,122,0.14);display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}
.ch .aqua-grid .mo{font-family:'Nanum Myeongjo',Pretendard,serif;font-size:26px;font-weight:800;line-height:1.1}
.ch .aqua-grid .mo small{font-size:14px;font-weight:600;margin-left:3px}
.ch .aqua-grid .reg{font-size:12px;color:#4A7480}
.ch .aqua-grid .off{padding:2px 10px;border-radius:9999px;background:#A8E6CF;font-size:12px;font-weight:700;color:#163F4D}
.ch .aqua-grid .now{font-family:'Nanum Myeongjo',Pretendard,serif;font-size:22px;font-weight:800}
.ch .aqua-grid .now small{font-size:13px;margin-left:2px}
.ch .aqua-note{margin:14px 0 0;text-align:center;font-size:14px;font-weight:600;color:#1D4B5B}
.ch .aqua-note span{display:block;margin-top:2px;font-size:12px;font-weight:400;color:#4A7480}

/* Slide 2: friend referral, same look as the Instagram feed (daisy meadow, paper cut-out) */
.ch .bg-meadow{background:#2F4F1C url('../assets/hero-meadow.jpg') center / cover no-repeat}
.ch .meadow-veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,244,237,0.95) 0%,rgba(247,244,237,0.9) 34%,rgba(247,244,237,0.55) 50%,rgba(247,244,237,0) 64%)}
.ch .hero-slide.tone-meadow .stag>p:first-of-type{color:#45602A!important}
.ch .hero-slide.tone-meadow .grad-text{background:linear-gradient(180deg,#4A3A2C 0%,#2E2018 100%);-webkit-background-clip:text;background-clip:text}
.ch .hero-slide.tone-meadow .hero-cta{background:#2E2018!important;color:#FFFFFF!important}
.ch .tone-meadow .hero-hl{color:#2E2018}
.ch .tone-meadow .hero-hl span{background:linear-gradient(transparent 58%,rgba(186,224,120,0.85) 58%,rgba(186,224,120,0.85) 92%,transparent 92%)}
.ch .tone-meadow .hero-hl b{color:#2F4A18}
.ch .tone-meadow .hero-date{border-color:#2E2018;background:rgba(255,255,255,0.6);color:#2E2018}
.ch .tone-meadow .dot .bar{background:rgba(255,255,255,0.85);box-shadow:0 0 0 1px rgba(46,32,24,0.18)}
.ch .tone-meadow .dot.on .bar{background:rgba(255,255,255,0.4)}
.ch .tone-meadow .dot .fill{background:#FFFFFF}
.ch .ref-paper{display:block;width:460px;max-width:100%;height:auto;transform:rotate(-3deg)}

/* Hero visual: logo circle and director photo crossfade with the slide */
.ch .hv{transition:opacity .7s ease,transform .9s cubic-bezier(.22,1,.36,1)}
.ch .hv.off{opacity:0;transform:scale(.94);pointer-events:none}

/* Slider dots with a progress fill on the active one */
.ch .dot .bar{position:relative;display:block;width:8px;height:6px;border-radius:3px;background:#A06F45;overflow:hidden;transition:width .45s cubic-bezier(.22,1,.36,1),background-color .3s ease}
.ch .dot.on .bar{width:36px;background:rgba(111,78,55,0.25)}
.ch .dot .fill{position:absolute;inset:0;background:#6F4E37;transform-origin:left;animation:chFill 6s linear both}
@keyframes chFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* Scroll reveal: fade up while scrolling down */
.ch.rv-on .reveal,.ch.rv-on .reveal-kids>*{opacity:0;transform:translateY(48px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);transition-delay:var(--rv-d,0s)}
.ch.rv-on .is-in{opacity:1!important;transform:none!important}

@media (max-width: 1024px){
.ch .nav{display:none!important}
.ch .hero-grid{grid-template-columns:minmax(0,1fr)!important}
.ch .hero-emblem{display:none!important}
.ch .slide-photo{display:block!important}
.ch .director-cut{display:none}
.ch .meadow-veil{background:linear-gradient(90deg,rgba(247,244,237,0.95) 0%,rgba(247,244,237,0.88) 70%,rgba(247,244,237,0.6) 100%)}
.ch .hero-slide.tone-dark.has-photo h1{font-size:56px!important}
.ch .director{grid-template-columns:minmax(0,1fr)!important;gap:28px!important;padding:28px!important}
.ch .director figure{max-width:380px}
.ch .consult-panel{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
.ch .cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
/* 3 + 2 circles: the second row sits centered under the first */
.ch .quick{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.ch .quick>a{grid-column:span 2}
.ch .quick>a:nth-child(4){grid-column:2 / span 2}
}
@media (max-width: 750px){
.ch .cards{grid-template-columns:minmax(0,1fr)!important}
.ch .ev-card{aspect-ratio:1 / 1}
.ch .ev-img{flex:1 1 auto;min-height:0;aspect-ratio:auto!important}
.ch .ev-body{padding:12px 16px 14px!important;gap:4px!important}
.ch .ev-body strong{font-size:16px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ch .ev-desc{display:none!important}
.ch .menu-list{grid-template-columns:minmax(0,1fr)!important}
.ch .menu-panel{padding:4px 20px 16px!important}
.ch .menu-price{font-size:16px!important}
.ch .hero-title{font-size:30px!important}
.ch .sec-title{font-size:28px!important}
.ch .consult-bar{border-radius:24px!important;padding:16px!important}
.ch .consult-fields{flex-basis:100%!important}
.ch .consult-fields>label:nth-child(-n+2){flex:1 1 calc(50% - 5px)!important}
.ch .consult-bar>button[type=submit]{width:100%;margin-left:0!important}
.ch .pill-sub{display:none!important}
/* Phone hero: about 3/5 of the earlier height */
.ch .hero-grid{padding:40px 20px 64px!important;min-height:0!important;gap:0!important}
.ch .hero-stack .stag{gap:14px!important}
.ch .has-photo .stag>*:not(.slide-photo){max-width:calc(100% - 108px)}
.ch .hero-slide.tone-dark.has-photo h1{font-size:40px!important}
.ch .hero-en{font-size:30px}
.ch .hero-badge{padding:6px 10px;font-size:10px}
.ch .hero-badge b{font-size:11px}
.ch .hero-badges{gap:6px!important}
.ch .watermark{font-size:64px}
/* Phone director slide: cut-out on the right, text in the left 58% */
.ch .has-photo .slide-photo{display:none!important}
.ch .director-cut{display:block!important;height:88%;right:-28px}
.ch .has-photo .stag>*:not(.slide-photo){max-width:58%!important}
.ch .has-photo .stag>p:first-of-type{font-size:10px!important;line-height:1.5}
.ch .hero-badges{display:none!important}
.ch .hero-en{font-size:24px}
.ch .tone-light .hero-en{font-size:22px}
.ch .deco-map{transform:translateX(110px)}
.ch .map-veil{background:linear-gradient(90deg,rgba(250,240,226,0.95) 0%,rgba(250,240,226,0.8) 60%,rgba(250,240,226,0.35) 100%)}
.ch .hero-career li{font-size:11px;padding-left:10px}
.ch .hero-career{gap:1px}
.ch .hero-stack .stag>p:first-of-type{font-size:11px!important}
.ch .hero-stack .stag>p:last-of-type{font-size:15px!important}
.ch .price-row{min-height:0!important;gap:10px!important}
.ch .hero-stack .stag>p.hero-hl{font-size:20px!important}
.ch .hero-date{height:34px;padding:0 16px;font-size:13px}
.ch .price-row s{font-size:15px!important}
.ch .price-row span{font-size:14px!important}
.ch .hero-cta{height:44px!important;padding:0 24px!important;font-size:14px}
.ch .slide-photo{position:absolute;right:0;top:0;width:96px!important;height:120px!important;border-radius:18px!important}
.ch .hero-silk .dot{height:20px!important}
.ch .hero-arrow{display:none!important}
.ch .consult-panel{padding:24px 20px!important}
.ch .consult-panel h2{font-size:26px!important}
.ch .card-pair{grid-template-columns:minmax(0,1fr)!important}
/* Phone director: small photo beside the name, the rest below */
.ch .director{grid-template-columns:112px minmax(0,1fr)!important;gap:14px 16px!important;padding:18px!important;align-items:start!important}
.ch .director>div{display:contents!important}
.ch .director>div>*:not(:first-child){grid-column:1 / -1}
.ch .director>div>:first-child{align-self:center}
.ch .director figcaption{display:none}
.ch .director figure img{border-radius:16px!important}
.ch .director h2{font-size:28px!important;gap:4px 8px!important}
.ch .director h2 span{font-size:13px!important}
.ch .director>div>:first-child>p:last-child{font-size:13px!important;margin-top:4px!important}
.ch .director>div>:first-child>p:first-child{font-size:11px!important}
.ch .director ul li{font-size:13px!important;line-height:1.5!important}
.ch .director ul{gap:3px!important}
.ch .director>div>:last-child{font-size:12px!important;line-height:1.6!important;padding-top:12px!important}
.ch .director-values{gap:8px!important}
.ch .director-values>div{padding:12px 6px!important}
.ch .director-values .laurel{width:44px;height:20px;margin-bottom:4px!important}
.ch .director-values>div>p:first-of-type{font-size:13px!important;letter-spacing:0!important}
.ch .director-values>div>p:last-child{font-size:11px!important}
.ch .slide-photo{width:140px!important;height:175px!important}
.ch .hero-price{font-size:26px!important}
.ch .quick{gap:12px!important}
.ch .quick a{width:100%!important;height:auto!important;aspect-ratio:1 / 1;font-size:16px!important}
.ch .quick a.head{font-size:14px!important}
.ch .brand-logo{height:30px!important}
.ch .gnb-bar{height:72px!important}
.ch .gnb-bar{padding:0 16px!important}
}
@media (prefers-reduced-motion: reduce){
.ch .top-in,.ch .orb,.ch .emblem,.ch .silk,.ch .spark,.ch .hero-slide,.ch .hero-slide .stag>*{animation:none!important}
.ch .dot .fill{animation:none}
.ch .lg,.ch .card,.ch .thumb{transition:none}
.ch .lg:hover,.ch .lg:active,.ch .card:hover,.ch .card:hover .thumb{transform:none}
.ch.rv-on .reveal,.ch.rv-on .reveal-kids>*{opacity:1;transform:none;transition:none}
}

/* Sub pages (location, benefits, price) */
@media (max-width: 1024px){
.ch .loc-grid,.ch .price-grid{grid-template-columns:minmax(0,1fr)!important}
.ch .benefit-hero{padding:28px 24px!important}
}
.ch .p3{display:grid;grid-template-columns:minmax(0,1fr) auto auto;column-gap:20px;align-items:baseline;padding:12px 0;border-bottom:1px solid rgba(207,162,122,0.35)}
.ch .p3-head{padding-top:4px;font-size:13px;font-weight:600;color:#7E5A3F}
/* Logo: CHIFFON WIG. Desktop = wordmark under the symbol, phone = side by side */
.ch .brand{display:flex;flex-direction:column;align-items:center;gap:7px}
.ch .brand img{display:block;width:auto}
.ch .brand-sym{height:44px}
.ch .brand-txt{height:12px}
.ch .brand-row{flex-direction:row;gap:10px}
.ch .brand-row .brand-sym{height:30px}
.ch .brand-row .brand-txt{height:13px}
/* Top menu stays on one line */
.ch .nav a{white-space:nowrap}
@media (max-width: 1280px){.ch .nav{gap:28px!important}}
@media (max-width: 1100px){.ch .nav{gap:20px!important;font-size:15px!important}}
@media (max-width: 750px){
.ch .gnb-bar .brand{flex-direction:row;gap:8px}
.ch .gnb-bar .brand-sym{height:30px}
.ch .gnb-bar .brand-txt{height:13px}
}
/* Event detail pages */
.ch .ev-grid{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:32px;align-items:start}
@media (max-width: 1024px){
.ch .ev-grid{grid-template-columns:minmax(0,1fr)}
.ch .ev-grid>figure{max-width:520px;width:100%;justify-self:center}
}
@media (max-width: 750px){
.ch .ev-detail{padding:24px 20px!important}
.ch .ev-detail dt{flex-basis:64px!important}
}
