/* RAA consultation and regional visit enquiries. */
.offer-deliverables{margin:0 0 24px}.offer-deliverables h3,.visit-inclusions h3{font-size:20px;margin:22px 0 14px}.offer-list{padding-left:20px;line-height:1.65;font-size:17px;margin:0 0 20px}.offer-list li{margin:10px 0}.consultation-card .request-note{color:#cbd9ca}.consultation-card .offer-list{font-size:16px}.consultation-card .offer-deliverables h3{color:#e7be67}.project-offer{padding-bottom:28px}.project-offer-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;background:#eae1c9;border:1px solid #d7c79f;border-radius:24px;padding:46px}.project-offer h2{font-size:clamp(32px,3.5vw,47px);margin:15px 0 24px}.project-offer p{font-size:18px;line-height:1.7}.project-offer .request-note{font-size:14px;margin:15px 0 0}.project-offer .button{background:#173f30;color:#fff}.project-offer .eyebrow{color:#78602e;font-size:13px}.offer-process h2{margin:15px 0 30px}.offer-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.offer-process-grid article{border-top:1px solid #c4cbbd;padding-top:20px}.process-number{color:#866c2c;font-size:14px;letter-spacing:.12em;font-weight:700}.offer-process-grid h3{font-size:21px;line-height:1.3;margin:17px 0 14px}.offer-process-grid p{font-size:17px;color:#58665b}.offer-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.offer-example-grid article{padding:26px;background:#fffdf7;border:1px solid #d9dfd0;border-radius:16px;display:flex;flex-direction:column}.offer-example-grid h3{font:400 26px/1.25 Georgia,serif;margin-bottom:20px}.offer-example-grid p{font-size:17px;line-height:1.7;color:#58665b}.offer-example-grid .text-link{margin-top:auto;font-size:16px}.visit-inclusions{max-width:850px;margin:0 auto 30px}.visit-inclusions .offer-list{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;font-size:17px}.west-card .visit-inclusions .offer-list{display:block;font-size:16px}.west-card .visit-inclusions{margin:0 0 14px}.project-request-section{scroll-margin-top:110px}.booking-summary .offer-deliverables{margin-top:25px}
@media(max-width:900px){.project-offer-inner{gap:30px;padding:30px}.offer-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-example-grid{grid-template-columns:1fr}.offer-example-grid article{padding:24px}.offer-example-grid h3{font-size:27px}}
@media(max-width:650px){.project-offer-inner{grid-template-columns:1fr;gap:20px;padding:27px 22px}.project-offer h2{font-size:35px}.project-offer p,.offer-list{font-size:17px}.offer-process-grid{gap:24px 18px}.offer-process-grid h3{font-size:19px}.offer-process-grid p{font-size:16px}.visit-inclusions .offer-list{display:block}.offer-process-grid{grid-template-columns:1fr}.project-offer{padding-bottom:15px}.offer-examples{padding-top:20px}.offer-deliverables h3{font-size:19px}}
.start-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.start-card{padding:40px;border-radius:24px;border:1px solid #d8dacd;display:flex;flex-direction:column;align-items:flex-start}.start-card h3{font:400 clamp(30px,3vw,42px)/1.12 Georgia,serif;letter-spacing:-.03em;margin:15px 0 22px}.start-card p{font-size:18px;line-height:1.7}.consultation-card{background:#12392b;color:#f8f3e6}.consultation-card .eyebrow{color:#e7be67}.consultation-card .button{margin-top:auto}.home-price{font-size:30px;font-weight:700;margin-bottom:20px;color:#e7be67}.home-price span{opacity:.5;padding:0 8px}.home-price small{font-size:13px;letter-spacing:.1em}.west-card{background:#eee8d7}.country-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 25px}.country-shortcuts a{padding:8px 12px;border:1px solid #c8cbb9;border-radius:30px;background:#ffffff80;font-size:15px}.country-shortcuts a:hover{background:#fff}.service-deliverables{font-size:16px;line-height:1.6;padding-left:19px;margin:0 0 22px}.service-deliverables li{margin-bottom:8px}.raa-chat{position:fixed;bottom:22px;right:22px;z-index:40;display:flex;align-items:center;gap:10px;background:#173f30;color:#fff;border:1px solid #a9bbaa;border-radius:40px;padding:14px 23px;box-shadow:0 8px 28px #00190d30;font-size:17px;font-weight:700}.raa-chat>span:first-child{font-size:26px;line-height:1}.booking-intro{padding-top:70px;padding-bottom:25px}.booking-intro h1{font-size:clamp(40px,5.5vw,74px);max-width:850px;margin:18px 0 24px}.booking-intro>p:last-child{font-size:20px;max-width:680px;color:#57645b}.booking-jump{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:45px}.booking-jump a{padding:12px 20px;background:#e9e3d4;border:1px solid #d2cfbf;border-radius:30px;font-weight:700;font-size:16px}.booking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:start;padding-bottom:80px;scroll-margin-top:125px}.booking-summary h2{margin:18px 0 28px}.session-price{display:flex;gap:20px;align-items:center;padding:22px 0;border-top:1px solid #d3d8c9;border-bottom:1px solid #d3d8c9}.session-price strong{font:400 64px/1 Georgia,serif;color:#173f30}.session-price span{font-size:17px}.booking-summary ul{padding-left:20px;line-height:1.8;font-size:18px}.booking-summary li{margin:12px 0}.booking-portrait{height:220px;width:180px;object-fit:cover;object-position:center 25%;border-radius:16px;margin:30px 0 16px}.booking-summary>p:last-child{font-size:16px}.booking-form-card{border:1px solid #d9ddcf;background:#fffdf8;border-radius:24px;padding:32px}.booking-form-card h2{font-size:34px;margin:12px 0 30px}.field{display:flex;flex-direction:column;gap:8px;font-size:16px;font-weight:700;margin-bottom:20px;min-width:0}.field input,.field select,.field textarea{border:1px solid #bbc7b8;border-radius:9px;background:#fff;padding:13px 14px;font:400 17px/1.5 Arial,sans-serif;width:100%;min-width:0;color:#182822}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #b9953e;outline-offset:2px}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.request-note,.form-fallback{font-size:15px;line-height:1.65;color:#5b675c}.form-fallback a{text-decoration:underline;overflow-wrap:anywhere}.request-consent{display:flex;align-items:flex-start;gap:12px;font-size:15px;line-height:1.6;margin:20px 0}.request-consent input{margin-top:5px;width:19px;height:19px;flex:none;accent-color:#173f30}.request-submit{font-size:17px;border:0;cursor:pointer}.request-status{font-size:16px;margin-top:16px}.form-trap{display:none}.calendar{border:1px solid #d4dacc;background:#f2f4eb;border-radius:16px;padding:20px;margin:25px 0}.calendar-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.calendar-top h3{font-size:18px}.calendar-top button{background:transparent;border:1px solid #bbc8b8;padding:5px 12px;border-radius:7px;font-size:20px}.calendar-top div{display:flex;gap:6px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;text-align:center}.calendar-week{font-size:12px;color:#586a59;margin-bottom:8px}.calendar-days button{min-height:42px;padding:5px;background:#fff;border:1px solid #d2dbc9;border-radius:7px;color:#183e2c;font-size:16px}.calendar-days button:disabled{background:transparent;color:#a0a99c;border-color:transparent}.calendar-days button[aria-pressed=true]{background:#173f30;color:#fff;border-color:#173f30}.calendar-days button:not(:disabled):hover{border-color:#977b34;background:#e7be67;color:#173f30}.visit-booking{background:#e6ecdf;padding:65px 0 80px;scroll-margin-top:100px}.visit-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-bottom:35px}.visit-heading h2{margin-top:15px}.visit-heading>p{font-size:19px;line-height:1.7}.visit-form-wrap{max-width:850px;margin:auto;background:#fffdf8;padding:36px;border:1px solid #cdd8c3;border-radius:24px}.country-fieldset{border:0;margin:0 0 25px;padding:0;min-width:0}.country-fieldset legend{font-size:21px;font-weight:700;margin-bottom:18px}.country-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.country-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:14px 8px;border:1px solid #cbd4c4;border-radius:12px;background:#f4f5ed;color:#203a2b;font-size:14px;line-height:1.3;min-height:90px}.country-choice:hover,.country-choice[aria-pressed=true]{background:#173f30;color:#fff;border-color:#173f30}.country-flag{font-size:29px}.thanks{max-width:800px;padding-top:60px;padding-bottom:60px}.thanks .eyebrow{margin:35px 0 15px}.thanks h1{margin-bottom:25px}.thanks p{font-size:19px}.raa-booking .header-inner nav{gap:20px}.request-submit:disabled{opacity:.65}.raa-booking .footer{padding-bottom:90px}
@media(max-width:900px){.start-card{padding:28px}.booking-layout{gap:30px;grid-template-columns:.8fr 1.2fr}.booking-form-card{padding:24px}.form-two{grid-template-columns:1fr;gap:0}.country-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.visit-heading{gap:30px}}
@media(max-width:650px){.start-grid,.booking-layout,.visit-heading{grid-template-columns:1fr}.start-card{padding:28px 23px}.start-card h3{font-size:34px}.start-card p{font-size:17px}.booking-intro{padding-top:38px}.booking-intro h1{font-size:45px}.booking-intro>p:last-child{font-size:18px}.booking-layout{padding-bottom:45px}.booking-form-card{padding:22px 17px}.booking-form-card h2{font-size:30px}.booking-jump a{font-size:14px;padding:10px 14px}.booking-portrait{height:150px;width:130px}.session-price strong{font-size:54px}.booking-summary ul{font-size:17px}.visit-booking{padding:40px 0 55px}.visit-form-wrap{padding:23px 16px}.visit-heading{gap:15px}.country-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.country-choice{font-size:12px;min-height:86px}.country-flag{font-size:27px}.calendar{padding:14px 10px}.calendar-days button{min-height:40px;font-size:15px}.raa-chat{bottom:16px;right:14px;font-size:15px;padding:11px 18px}.start-with-raa{padding-bottom:35px}.field input,.field select,.field textarea{font-size:16px}.visit-heading>p{font-size:18px}}

.session-dock{position:fixed;bottom:22px;left:22px;z-index:39;display:grid;grid-template-columns:1fr auto;gap:0 20px;background:#e7be67;color:#123326;padding:12px 20px;border:1px solid #cfac5d;border-radius:14px;box-shadow:0 8px 25px #00190d20;font-size:16px;font-weight:700}.session-dock small{grid-row:2;font-size:12px;font-weight:400}.session-dock>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:24px}@media(max-width:650px){.session-dock{left:12px;bottom:14px;padding:9px 13px;font-size:13px;gap:0 10px;max-width:53%}.session-dock small{font-size:11px}.raa-chat{font-size:13px;padding:12px 14px;right:12px}.raa-chat>span:first-child{font-size:20px}}

/* Bundled flag images render consistently, including on Windows. */
.country-flag{display:flex;align-items:center;justify-content:center;height:34px}.flag-image{display:inline-block;width:40px;height:30px;object-fit:contain;vertical-align:middle;flex:none}.country-shortcuts a{display:inline-flex;align-items:center;gap:8px}.country-shortcuts .flag-image{width:25px;height:19px}

/* Separate, readable actions aligned together on the right. */
.floating-actions{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;flex-direction:column;align-items:stretch;gap:14px;width:258px;max-width:calc(100vw - 32px);background:transparent;pointer-events:none}
.floating-actions .session-dock,.floating-actions .raa-chat{position:static;left:auto;right:auto;bottom:auto;max-width:none;width:100%;box-sizing:border-box;margin:0;pointer-events:auto;font-size:18px;line-height:1.3}
.floating-actions .session-dock{padding:14px 18px;min-height:82px;gap:4px 10px;border-radius:18px}
.floating-actions .session-dock small{font-size:15px;line-height:1.35}
.floating-actions .session-dock>span:last-child{font-size:25px}
.floating-actions .raa-chat{justify-content:center;min-height:62px;padding:14px 18px;border-radius:32px}
@media(max-width:650px){.floating-actions{right:12px;bottom:calc(14px + env(safe-area-inset-bottom,0px));width:240px;gap:12px}.floating-actions .session-dock,.floating-actions .raa-chat{font-size:17px}.floating-actions .session-dock{min-height:76px;padding:12px 15px}.floating-actions .session-dock small{font-size:14px}.floating-actions .raa-chat{min-height:58px;padding:12px 16px}}

/* Give duration and price the same emphasis as the booking label. */
.floating-actions .session-dock small{font-size:inherit;font-weight:700;color:#09291f;opacity:1;line-height:1.3}

/* Short initial enquiries: shared contact guidance above the service question. */
.contact-help{font-size:15px;line-height:1.6;color:#52634f;margin:-8px 0 24px}.raa-request textarea{min-height:115px}.raa-request .request-consent{margin:18px 0}.raa-request .form-delivery-note{font-size:13px;line-height:1.55;color:#5b675c;margin-top:16px}
