/* September review: isolated navigation, clear copy, natural media proportions. */
.site-directions{display:none!important}
header .header-phone,header .header-phone:disabled{background:#a51e43;color:#fff;border:1px solid #a51e43;box-shadow:0 4px 18px #8d153e38;opacity:1}
header .header-phone:hover{background:#681024;color:#fff}
/* The home film and all copy occupy separate grid cells. */
html[data-page="home"] .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;min-height:0;height:auto;padding:125px 5% 55px;gap:5%;isolation:isolate}
html[data-page="home"] .hero:after{display:none}
html[data-page="home"] .hero>.wrap{grid-column:1;grid-row:1;width:100%;padding:25px 0;max-width:none;align-self:center;z-index:1}
html[data-page="home"] .hero .hero-content{max-width:none}
html[data-page="home"] .hero h1{font-size:clamp(44px,5.3vw,80px)}
html[data-page="home"] .hero .photo.home-video{position:relative;inset:auto;grid-column:2;grid-row:1;width:100%;height:auto;min-height:640px;z-index:1;background-size:cover;overflow:hidden}
html[data-page="home"] .hero .photo.home-video video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
html[data-page="home"] .hero>.ribbon{display:none}
html[data-page="home"] .hero .hero-note{position:static;transform:none;margin:22px 0;font-size:25px}
html[data-page="home"] .hero .actions{display:flex;flex-wrap:wrap;gap:12px}
html[data-page="home"] .hero .hero-sound-button{right:7%;bottom:75px}
.split-copy:has(.ribbon){display:flex;flex-direction:column;padding-bottom:35px;overflow:hidden}
.split-copy>:is(svg,canvas).ribbon{position:relative!important;inset:auto!important;flex:0 0 100px;width:100%!important;height:100px!important;max-height:100px;margin-top:28px;order:10;opacity:.4;mask-image:none;-webkit-mask-image:none;transform:none}
.features{gap:20px;padding-top:45px;padding-bottom:60px}
.features>div,.theme-page .theme-benefits-grid article{background:#681024;color:#fff;padding:30px 25px;border:0;border-radius:2px;min-width:0}
.features h3,.features p,.features .feature-icon,.theme-page .theme-benefits-grid h3,.theme-page .theme-benefits-grid p,.theme-page .theme-benefit-number{color:#fff}
.features p,.theme-page .theme-benefits-grid p{line-height:1.75;opacity:.9}
.features h3{font-size:28px;margin-bottom:16px}.features .feature-icon{font-size:28px;margin-bottom:20px}
:is(#approach, .unified-process) .steps.carousel-track{gap:28px;scroll-snap-type:x mandatory}
:is(#approach, .unified-process) .steps.carousel-track>.step{flex:0 0 100%;width:100%;display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:auto auto 1fr;text-align:left;column-gap:50px;padding:0;background:#ede1db;overflow:hidden;scroll-snap-align:start}
:is(#approach, .unified-process) .step img{grid-column:1;grid-row:1/4;width:100%;height:420px;object-fit:cover;aspect-ratio:auto;margin:0}
:is(#approach, .unified-process) .step>picture{display:block;grid-column:1;grid-row:1/4;width:100%;height:420px;overflow:hidden}
:is(#approach, .unified-process) .step>picture>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
:is(#approach, .unified-process) .step .number{grid-column:2;margin:35px 30px 10px 0;font-size:62px}
:is(#approach, .unified-process) .step h3{grid-column:2;font-size:40px;margin:0 30px 15px 0}
:is(#approach, .unified-process) .step p{grid-column:2;max-width:390px;margin:0 30px 35px 0;font-size:16px;line-height:1.75}
/* Lighter wine overlays retain the original colours. */
.hero.dark:after,.theme-page .hero.dark:after{background:linear-gradient(90deg,#4d0b27b3,#68102442 58%,#6810240d)}
.banner:after,.evening-banner:after{background:linear-gradient(90deg,#4c0c28a6,#68102438)}
.event-hero:after{background:linear-gradient(0deg,#4b0b2999,#68102419)}
.format:after{background:linear-gradient(0deg,#4b0b29ad,transparent 70%)}
.hero.dark .photo video,.banner video{filter:none}
.photo-cta{position:relative;isolation:isolate;background:#681024;overflow:hidden}
.photo-cta>img,.photo-cta>picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.photo-cta>picture{display:block}
.photo-cta>picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.photo-cta:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#4b0b29b8,#68102470);z-index:-1}
.photo-cta h2,.photo-cta p{color:#fff}
.country-page main>.split{max-width:1360px;margin:auto;gap:6%;padding:70px 5%;align-items:center;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.country-page main>.split .split-copy{padding:20px 0}
.country-page main>.split .split-photo,.country-gallery-grid img,.country-gallery-portraits img{width:100%;height:auto!important;min-height:0;max-height:none;object-fit:contain}
/* Two typographic ribbons, inspired by the supplied reference. */
.wow-section{padding:70px 0;overflow:hidden;background:var(--paper);text-align:center}
.wow-marquee{overflow:hidden;white-space:nowrap;line-height:1.08;user-select:none}
.wow-marquee-track{display:flex;width:max-content;animation:wow-travel 32s linear infinite}
.wow-marquee:nth-of-type(2) .wow-marquee-track{animation-direction:reverse}
.wow-marquee-track span{font:500 clamp(48px,8vw,116px)/1.1 'Cormorant Garamond',serif;color:#cbb0b5;padding-right:36px}
.wow-marquee-track em{font-style:normal;color:#681024}
.wow-section .wow-copy{padding:0 20px;margin-top:32px}
.wow-section .wow-cta{margin-top:20px}
.wow-motion-toggle{display:block;margin:22px auto 0;border:1px solid #bca69c;background:transparent;color:#681024;padding:9px 16px;font-size:11px}
.wow-section.is-paused .wow-marquee-track{animation-play-state:paused}
@keyframes wow-travel{to{transform:translateX(-50%)}}
.care-section{background:#f0e6df;color:var(--ink)}
.care-section h2{max-width:850px;color:#681024}
.care-carousel{margin-top:30px}
.care-section .care-grid{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 16px;scrollbar-width:none}
.care-section .care-grid>.care-item{flex:0 0 calc((100% - 48px)/3);min-width:0;min-height:285px;padding:30px;background:#681024;color:#fff;border:0;scroll-snap-align:start;display:flex;flex-direction:column;align-items:flex-start;text-align:left}
.care-item .care-number{font:500 50px/1 'Cormorant Garamond',serif;color:#d6a7b4;margin-bottom:32px}
.care-section .care-item h3{font-size:31px;color:#fff;margin:0 0 16px}
.care-section .care-item p{font-size:15px;line-height:1.8;color:#fff;opacity:.93}
.care-controls{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-bottom:24px}
.care-controls button{width:48px;height:48px;border:1px solid #681024;background:transparent;color:#681024;border-radius:50%;font-size:24px}
.care-controls button:disabled{opacity:.3}.care-position{font-size:13px;color:#681024}
@media(max-width:1000px){.features{grid-template-columns:1fr 1fr}.care-section .care-grid>.care-item{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:760px){
html[data-page="home"] .hero{display:flex;flex-direction:column;padding:120px 6% 35px;gap:25px}
html[data-page="home"] .hero>.wrap{padding:0}
html[data-page="home"] .hero h1{font-size:clamp(46px,12vw,68px)}
html[data-page="home"] .hero .photo.home-video{width:100%;min-height:0;height:auto;aspect-ratio:4/5;order:2}
html[data-page="home"] .hero .hero-sound-button{right:9%;bottom:50px}
html[data-page="home"] #about{display:flex;flex-direction:column}
html[data-page="home"] #about .split-copy{order:0;padding:40px 6% 20px}
html[data-page="home"] #about .split-photo{order:1;height:auto;min-height:0;width:100%}
.features{padding:30px 6% 45px;gap:14px;grid-template-columns:1fr}.features>div{padding:28px}
:is(#approach, .unified-process) .steps.carousel-track>.step{display:flex;flex-direction:column;gap:0}
:is(#approach, .unified-process) .step img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
:is(#approach, .unified-process) .step>picture{display:block;width:100%;height:auto;aspect-ratio:4/3;overflow:hidden}
:is(#approach, .unified-process) .step>picture>img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
:is(#approach, .unified-process) .step .number{margin:24px 24px 8px;font-size:48px}
:is(#approach, .unified-process) .step h3{margin:0 24px 14px;font-size:34px}
:is(#approach, .unified-process) .step p{margin:0 24px 28px;font-size:14px}
.country-page main>.split{display:flex;flex-direction:column;padding:45px 6%;gap:25px}
.country-page main>.split .split-photo{height:auto!important;width:100%;order:1}
.country-page main>.split .split-copy{order:0}
.care-section .care-grid{display:grid;grid-template-columns:1fr;gap:16px;overflow:visible}
.care-section .care-grid>.care-item{min-height:0;padding:28px}
.care-controls{display:none}.care-item .care-number{margin-bottom:18px}
.wow-section{padding:45px 0}.wow-marquee-track span{font-size:57px}
}
@media(prefers-reduced-motion:reduce){.wow-marquee-track{animation:none}.wow-motion-toggle{display:none}}
.features h3{font-size:24px;hyphens:none;overflow-wrap:normal;word-break:normal}
footer .footer-grid{grid-template-columns:1.2fr 1fr 1fr}
footer .footer-grid>div:nth-child(2)>a{display:block;margin:8px 0}
@media(max-width:760px){footer .footer-grid{grid-template-columns:1fr}.features h3{font-size:27px}}
.theme-page main>.split{display:block;max-width:1160px;margin:auto}
.theme-page main>.split .split-copy{padding:65px 6%;max-width:900px}
.theme-page .theme-format-card{background:#681024;color:#fff}
.theme-page .theme-format-card :is(h3,p,span){color:#fff}
.theme-page .theme-format-copy{padding:30px;min-height:260px}
.theme-page .banner,.theme-page .theme-inquiry{background:#681024}
.theme-page .banner:after{display:none}
@media(max-width:760px){.theme-page main>.split .split-copy{padding:40px 6%}}
.hero.dark{background:#4b1427}
.banner{background:#4b1427}
.hero.dark .ribbon{display:none}
body[class] .hero.dark:after{background:linear-gradient(90deg,#4d0b27ad,#68102442 58%,#68102412)}
body[class] .banner:after{background:linear-gradient(90deg,#4c0c28a6,#68102438)}
@media(max-width:760px){body[class] .hero.dark:after{background:linear-gradient(0deg,#6810241a,#4d0b2766 60%,#4d0b2799)}}
/* Supplied photographs: image and copy remain separate for readability. */
.care-section .care-grid>.care-photo-card{padding:0;overflow:hidden;align-items:stretch}
.care-photo-card .care-photo{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;flex-shrink:0}
.care-photo-card .care-card-copy{padding:25px 26px 30px}
.care-photo-card .care-number{display:block;font-size:32px;margin-bottom:15px}
.care-photo-card .care-card-copy h3{font-size:30px}
.care-photo-card .care-card-copy p{font-size:14px;line-height:1.7}
.care-photo-card img[src*="care-production"]{object-position:center 65%}
@media(max-width:760px){.care-section .care-grid>.care-photo-card{padding:0}.care-photo-card .care-card-copy{padding:25px}.care-photo-card .care-photo{aspect-ratio:4/5}}
/* Bespoke event illustrations, drawn as a consistent fine-line series. */
.features .feature-icon-editorial{width:76px;height:76px;margin-bottom:24px;color:#f6e8dc;line-height:0}
.feature-icon-editorial svg{display:block;width:100%;height:100%;overflow:visible}
.feature-icon-editorial .icon-accent{stroke:#d8b78d}
@media(max-width:760px){.features .feature-icon-editorial{width:68px;height:68px;margin-bottom:20px}}
