/* THE EAGLE • Contact & Book based on the supplied design reference.
   Preserves actual contact details and inquiry-only booking workflow. */
.eagle-contact-page {
 --cr-bg:#faf9f5; --cr-panel:#fff; --cr-dark:#393b3b;
 --cr-ink:#393935; --cr-muted:#73716b; --cr-gold:#a28a39;
 --cr-line:#e8e4d9; --cr-faq:#eeece4;
 background:var(--cr-bg) !important;
 color:var(--cr-ink) !important;
}
:root[data-theme="dark"] .eagle-contact-page {
 --cr-bg:#292b29; --cr-panel:#363932; --cr-ink:#f4f1e8;
 --cr-muted:#c9c5ba; --cr-line:#555449; --cr-faq:#2f312e;
 --cr-gold:#dcc064;
}
.eagle-contact-page .contact-ref-main {
 max-width:1210px;
 margin:0 auto;
 padding:clamp(55px,6vw,90px) 30px clamp(70px,7vw,105px);
}
.eagle-contact-page .contact-ref-heading {margin-bottom:42px;max-width:1050px;}
.eagle-contact-page .contact-ref-heading .eyebrow {
 color:var(--cr-gold) !important;
 font:700 .72rem/1.5 "DM Sans","Manrope",sans-serif;
 letter-spacing:.18em;
}
.eagle-contact-page .contact-ref-heading .eyebrow::after {
 content:"";display:block;width:43px;height:2px;
 margin:14px 0;background:#b5993d;
}
.eagle-contact-page .contact-ref-heading h1 {
 margin:0 0 15px;
 color:var(--cr-ink) !important;
 font:700 clamp(2.25rem,4vw,3.55rem)/1.2 "Playfair Display","Noto Serif",Georgia,serif;
 letter-spacing:-.022em;
}
.eagle-contact-page .contact-ref-heading h1 em {color:var(--cr-gold) !important;}
.eagle-contact-page .contact-ref-heading >p:last-child {
 max-width:660px;margin:0;
 color:var(--cr-muted);
 font:400 .98rem/1.8 "DM Sans","Manrope",sans-serif;
}
.eagle-contact-page #book.book.section {
 display:grid !important;
 grid-template-columns:minmax(0,1.47fr) minmax(0,.98fr) !important;
 align-items:start !important;
 gap:clamp(24px,3.5vw,42px) !important;
 margin:0 !important;
 padding:0 !important;
 width:100% !important;max-width:none !important;
 background:transparent !important;
 border:0 !important;box-shadow:none !important;
}
.eagle-contact-page #booking-form {
 display:block !important;
 min-width:0 !important;
 margin:0 !important;
 padding:clamp(25px,3.2vw,43px) !important;
 background:var(--cr-panel) !important;
 color:var(--cr-ink) !important;
 border:1px solid var(--cr-line) !important;
 border-radius:23px !important;
 box-shadow:0 13px 39px rgba(35,34,26,.09) !important;
}
.eagle-contact-page #booking-form h2 {
 margin:0 0 28px;color:var(--cr-ink) !important;
 font:700 clamp(1.45rem,2.2vw,1.95rem)/1.3 "Playfair Display","Noto Serif",Georgia,serif;
}
.eagle-contact-page #booking-form .form-grid {
 display:grid !important;
 grid-template-columns:repeat(2,minmax(0,1fr)) !important;
 gap:19px 17px !important;
 padding:0 !important;
}
.eagle-contact-page #booking-form .form-grid label {
 display:flex;flex-direction:column;gap:8px;
 min-width:0;
 margin:0 !important;padding:0 !important;
 color:var(--cr-ink) !important;
}
.eagle-contact-page #booking-form .form-grid label>span,
.eagle-contact-page #booking-form .date-caption,
.eagle-contact-page #booking-form .booking-date-panel label>span {
 display:block;
 margin:0 !important;
 font:750 .7rem/1.5 "DM Sans","Manrope",sans-serif !important;
 letter-spacing:.095em;
 text-transform:uppercase;
 color:var(--cr-muted) !important;
}
.eagle-contact-page #booking-form .form-grid .full,
.eagle-contact-page #booking-form .contact-dates,
.eagle-contact-page #booking-form .contact-message {grid-column:1/-1 !important;}
.eagle-contact-page #booking-form .form-grid input:not([type="checkbox"]),
.eagle-contact-page #booking-form .form-grid select,
.eagle-contact-page #booking-form .form-grid textarea,
.eagle-contact-page #booking-form .contact-range-trigger {
 width:100% !important;
 min-width:0 !important;
 min-height:47px !important;
 border:1px solid var(--cr-line) !important;
 border-radius:7px !important;
 background:var(--cr-bg) !important;
 color:var(--cr-ink) !important;
 padding:12px 13px !important;
 font:500 .9rem/1.5 "DM Sans","Manrope",sans-serif !important;
 box-shadow:none !important;
}
.eagle-contact-page #booking-form .form-grid textarea {
 min-height:112px !important;
 padding:13px 14px !important;resize:vertical;
}
.eagle-contact-page #booking-form input::placeholder,
.eagle-contact-page #booking-form textarea::placeholder {color:var(--cr-muted)!important;opacity:.75;}
.eagle-contact-page #booking-form input:focus-visible,
.eagle-contact-page #booking-form select:focus-visible,
.eagle-contact-page #booking-form textarea:focus-visible,
.eagle-contact-page #booking-form button:focus-visible {
 outline:2px solid var(--cr-gold)!important;outline-offset:2px;
}
.eagle-contact-page #booking-form .contact-dates {position:relative;display:block;}
.eagle-contact-page #booking-form .date-caption {margin:0 0 8px !important;}
.eagle-contact-page #booking-form .contact-range-trigger {
 display:flex;align-items:center;justify-content:space-between;
 text-align:left;gap:16px;cursor:pointer;
}
.eagle-contact-page #booking-form .contact-range-trigger i {color:var(--cr-gold);font-size:1rem;}
.eagle-contact-page #booking-form .contact-range-trigger[aria-expanded="true"] {
 border-color:var(--cr-gold) !important;box-shadow:0 0 0 2px rgba(162,138,57,.12)!important;
}
.eagle-contact-page #booking-form .contact-date-panel {
 position:absolute;
 inset:auto 0 auto 0;
 top:calc(100% + 8px);
 z-index:40;
 background:var(--cr-panel);
 color:var(--cr-ink);
 border:1px solid var(--cr-line);
 box-shadow:0 16px 40px rgba(15,17,12,.2);
 border-radius:13px;
 padding:20px;
}
.eagle-contact-page #booking-form .contact-date-panel[hidden] {display:none !important;}
.eagle-contact-page #booking-form .date-panel-hint {
 color:var(--cr-muted);font-size:.8rem;line-height:1.5;margin:0 0 14px;
}
.eagle-contact-page #booking-form .contact-date-pair {
 display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;
}
.eagle-contact-page #booking-form .contact-date-pair label {display:flex;flex-direction:column;gap:7px;}
.eagle-contact-page #booking-form .contact-date-pair label>span {color:var(--cr-muted);font-size:.72rem;}
.eagle-contact-page #booking-form .date-duration {min-height:20px;margin:12px 0 9px;color:var(--cr-gold);font-size:.82rem;}
.eagle-contact-page #booking-form .date-panel-done {
 cursor:pointer;width:100%;padding:12px;border:none;border-radius:7px;
 background:#af9440;color:white;font-weight:750;
}
.eagle-contact-page #booking-form .consent {
 margin:23px 0 16px!important;color:var(--cr-muted)!important;font-size:.79rem;line-height:1.7;
}
.eagle-contact-page #booking-form .consent input {accent-color:#a48a35;}
.eagle-contact-page #booking-form .form-actions {
 display:grid !important;
 grid-template-columns:repeat(2,minmax(0,1fr)) !important;
 gap:12px!important;
 margin:0!important;
}
.eagle-contact-page #booking-form .form-actions button {
 display:flex!important;align-items:center;justify-content:center;gap:8px;
 min-height:51px!important;width:100%!important;
 padding:9px 13px!important;border-radius:8px!important;
 border:1px solid #a68c3e!important;
 font-size:.78rem!important;font-weight:800!important;
 letter-spacing:.035em;white-space:normal;
 text-transform:uppercase!important;
}
.eagle-contact-page #booking-form .form-actions button[value="whatsapp"] {
 background:linear-gradient(110deg,#8c7331,#b39844)!important;color:white!important;
}
.eagle-contact-page #booking-form .form-actions button[value="email"] {
 background:transparent!important;color:var(--cr-gold)!important;
}
.eagle-contact-page #booking-form .small-note {
 margin:16px 0 0!important;color:var(--cr-muted)!important;font-size:.78rem!important;line-height:1.7!important;
}
.eagle-contact-page #booking-form .booking-form-link {
 display:inline-block;margin-top:11px;color:var(--cr-gold)!important;font-size:.78rem;text-decoration:underline;
}
.eagle-contact-page #book .book-copy {
 position:relative;
 width:100%!important;max-width:none!important;
 min-width:0!important;align-self:start!important;
 padding:clamp(27px,3vw,38px)!important;
 border-radius:23px!important;
 border:0!important;
 background:#393b3b!important;color:#fff!important;
 box-shadow:none!important;
 overflow:hidden;
}
.eagle-contact-page #book .book-copy::before {
 content:"";position:absolute;inset:0 0 auto;height:3px;
 background:linear-gradient(90deg,#ab8c29,#dcc14f);
}
.eagle-contact-page #book .book-copy h2 {
 margin:0 0 13px!important;
 color:#fff!important;
 font:700 clamp(1.5rem,2.15vw,1.9rem)/1.3 "Playfair Display","Noto Serif",Georgia,serif!important;
}
.eagle-contact-page #book .contact-card-lead {
 margin:0 0 26px!important;
 color:#dddcd6!important;
 font:400 .91rem/1.7 "DM Sans","Manrope",sans-serif;
}
.eagle-contact-page #book .contact-detail-list {display:grid;gap:24px;margin:0 0 27px;}
.eagle-contact-page #book .contact-detail {
 display:flex;align-items:center;gap:14px;
 margin:0;text-decoration:none;color:#fff!important;
 min-width:0;overflow-wrap:anywhere;
}
.eagle-contact-page #book .detail-icon {
 display:grid;place-items:center;width:42px;height:42px;
 flex:0 0 42px;border-radius:9px;
 background:#59533a;color:#f4cc3c;font-size:1rem;
}
.eagle-contact-page #book .contact-detail small {
 display:block;margin-bottom:5px;
 color:#aeaca4!important;letter-spacing:.07em;font-size:.7rem;font-weight:750;
}
.eagle-contact-page #book .contact-detail strong {
 color:#f7f6f1!important;font-size:.91rem;font-weight:700;line-height:1.5;
}
.eagle-contact-page #book .contact-whatsapp-cta {
 display:flex;align-items:center;justify-content:center;gap:9px;
 min-height:53px;
 padding:13px 17px;border-radius:8px;
 color:#fff!important;background:#1ec964!important;
 font-size:.86rem;font-weight:750;text-decoration:none;
}
.eagle-contact-page #book .contact-whatsapp-cta:hover {background:#16ab55!important;}
.eagle-contact-page #book .contact-licence {
 padding-top:19px;border-top:1px solid #535453;
 margin:19px 0 0;
 font-size:.75rem;color:#bab8b0!important;
}
.eagle-contact-page .contact-reference-faq {
 margin:0!important;
 padding:clamp(75px,7vw,103px) 24px clamp(80px,8vw,115px);
 background:var(--cr-faq)!important;
 color:var(--cr-ink);text-align:center;
}
.eagle-contact-page .contact-reference-faq>.eyebrow {
 display:block;margin:0 0 16px;color:var(--cr-gold)!important;
 font-size:.74rem;font-weight:750;letter-spacing:.19em;
}
.eagle-contact-page .contact-reference-faq>.eyebrow::after {
 content:"";display:block;margin:14px auto;width:42px;height:2px;background:var(--cr-gold);
}
.eagle-contact-page .contact-reference-faq h2 {
 font:700 clamp(2.1rem,3.6vw,3.2rem)/1.28 "Playfair Display","Noto Serif",Georgia,serif;
 color:var(--cr-ink)!important;
 margin:0 0 34px;
}
.eagle-contact-page .contact-reference-faq h2 em {color:var(--cr-gold)!important;}
.eagle-contact-page .contact-faq-list {width:min(790px,100%);margin:0 auto;text-align:left;}
.eagle-contact-page .contact-faq-list details {
 display:block!important;background:var(--cr-panel)!important;
 border:1px solid var(--cr-line)!important;border-radius:12px!important;
 margin:9px 0!important;padding:0!important;overflow:hidden;
 box-shadow:none!important;
}
.eagle-contact-page .contact-faq-list summary {
 display:flex;justify-content:space-between;align-items:center;
 padding:19px 22px!important;list-style:none;cursor:pointer;
 color:var(--cr-ink)!important;font:700 .9rem/1.5 "DM Sans","Manrope",sans-serif!important;
}
.eagle-contact-page .contact-faq-list summary::-webkit-details-marker {display:none;}
.eagle-contact-page .contact-faq-list summary::after {
 content:"\f078"!important;font:900 .78rem/1 "Font Awesome 6 Free"!important;
 flex:0 0 15px;margin-left:12px;color:var(--cr-gold)!important;transform:none;
}
.eagle-contact-page .contact-faq-list details[open] summary::after {transform:rotate(180deg);}
.eagle-contact-page .contact-faq-list details>p {
 padding:0 22px 18px!important;margin:0!important;
 background:none!important;border:none!important;color:var(--cr-muted)!important;
 font-size:.86rem;line-height:1.8;
}
@media(max-width:960px) {
 .eagle-contact-page #book.book.section {grid-template-columns:1fr!important;}
 .eagle-contact-page #book .book-copy {max-width:none!important;}
}
@media(max-width:560px) {
 .eagle-contact-page .contact-ref-main {padding:48px 15px 75px;}
 .eagle-contact-page .contact-ref-heading h1 {font-size:clamp(1.9rem,8vw,2.65rem);}
 .eagle-contact-page #booking-form {padding:24px 17px!important;}
 .eagle-contact-page #booking-form .form-grid {grid-template-columns:1fr!important;}
 .eagle-contact-page #booking-form .contact-date-pair {grid-template-columns:1fr;}
 .eagle-contact-page #booking-form .form-actions {grid-template-columns:1fr!important;}
 .eagle-contact-page #booking-form .contact-date-panel {padding:14px;}
 .eagle-contact-page #book .book-copy {padding:25px!important;}
 .eagle-contact-page .contact-reference-faq {padding:70px 15px 90px;}
 .eagle-contact-page .contact-reference-faq h2 {font-size:2rem;}
 .eagle-contact-page .contact-faq-list summary {padding:17px!important;font-size:.83rem!important;}
 .eagle-contact-page .contact-faq-list details>p {padding:0 17px 18px!important;}
}
@media(prefers-reduced-motion:reduce) {
 .eagle-contact-page #booking-form button,.eagle-contact-page .contact-faq-list summary::after {transition:none!important;}
}

/* Deep links to #book must show the heading above the booking form, not jump past it. */
.eagle-contact-page #book.book.section {scroll-margin-top:620px !important;}
