/* Explicit surface and CTA colours. */
body{background:#f2ede4;color:#163832}
main>.section{background:#f2ede4;color:#163832;--muted:#4d5b53;--ivory:#163832}
main>.section.soft,main>.split,main>.booking-strip,.proof-section{background:#163832;color:#f2ede4;--muted:#d1d4cb;--ivory:#f2ede4}
main>.split .split-copy p{color:#d1d4cb}
main .journey,main .card,main .package{background:#fffdf8;color:#163832;--muted:#4d5b53;--ivory:#163832;border-color:#16383240}
main .journey p,main .card p{color:#4d5b53}
main .price,main .fee,main .package .included,main .section:not(.soft):not(.booking-strip)>.container>.eyebrow{color:#786039!important}
main .guide-cover{background:#163832;color:#c4a35a;--ivory:#f2ede4}
main .guide-art{color:#f2ede4;--ivory:#f2ede4}
body a.button,body button.button,body button[type=submit],body a.btn,body .programme-button{background:#c4a35a;color:#163832!important;border:1px solid #c4a35a;opacity:1}
body a.button.secondary,body a.btn.secondary,body a.btn.ghost,body a.btn.outline{background:#163832;color:#f2ede4!important;border:1px solid #163832}
body .hero a.button.secondary,body .soft a.button.secondary,body .split a.button.secondary,body .booking-strip a.button.secondary,body footer a.button.secondary{background:#f2ede4;color:#163832!important;border-color:#f2ede4}
body a.button:hover,body button[type=submit]:hover,body a.btn:hover{background:#dfc797;color:#163832!important;border-color:#dfc797}
body .site-header,body footer{background:#163832;color:#f2ede4;--muted:#d1d4cb;--ivory:#f2ede4}
body .site-header nav.open{background:#163832}
body .language button,body .menu-toggle{color:#f2ede4}
body .language button[aria-pressed=true]{color:#dfc797}
main input,main textarea,main select,main select option{background:#fffdf8;color:#163832}
main #form-status,main #draft-link{color:#786039}
body .programme-hero,body .programme-section{color:#163832}
body .programme-section.outcome{background:#163832;color:#f2ede4}
body .programme-meta span:last-child{color:#786039!important}

/* Hero photographs require explicit light typography, independent of body colour. */
body main .hero{color:#f2ede4;--ivory:#f2ede4;--muted:#eee9df}
body main .hero h1,body main .hero h2,body main .hero .hero-subtitle{color:#f2ede4;text-shadow:0 2px 16px rgba(0,0,0,.35)}
body main .hero .eyebrow{color:#dfc797!important}

/* Stable explicit colours for booking cards and catalogue. */
body main .card h2,body main .card h3{color:#163832}
body main .card p,body main .card .fine{color:#4d5b53}
body main .card .fee,body main .card .price{color:#786039!important}
body main .section.soft .card,body main .section .card{background:#fffdf8;color:#163832}
body main .section.soft .card a.button.secondary{background:#163832;color:#f2ede4!important;border-color:#163832}
body main .hero .hero-subtitle{color:#f2ede4}
.piece-price-table{width:100%;border-collapse:collapse;margin:28px 0 44px;color:#163832;background:#fffdf8}
.piece-price-table th,.piece-price-table td{padding:17px 20px;text-align:left;border-bottom:1px solid #16383233}
.piece-price-table thead{background:#163832;color:#f2ede4}
.piece-price-table tbody th{font-weight:500}.piece-price-table td{font-weight:700;white-space:nowrap}.price-table-wrap{overflow-x:auto}
body .booking-service-note{padding:18px 22px;border-left:4px solid #c4a35a;background:#e9e3d7;color:#163832}
@media(max-width:760px){.piece-price-table th,.piece-price-table td{padding:14px 12px;font-size:14px}.cards.two{gap:24px}}

.complimentary-value{background:#163832;color:#f2ede4;border:1px solid #c4a35a;padding:19px 17px;margin:18px 0 24px}.complimentary-value span,.complimentary-value strong,.complimentary-value small{display:block}.complimentary-label{font-size:10px;letter-spacing:.12em;color:#dfc797;font-weight:700}.complimentary-value strong{font:23px/1.35 Georgia,serif;margin:10px 0;color:#f2ede4}.complimentary-value small{font-size:12px;color:#f2ede4}.piece-price-table tfoot{background:#163832;color:#f2ede4;font-weight:700}
