/* Balanced section rhythm and outline-to-orange actions · 1.6.0 */
#main>.destinations,#main>.packages,#main>.about-section,#main>.gallery-section{margin-top:72px;margin-bottom:72px}
#main>.service-grid,#main>.offer-section{margin-top:56px;margin-bottom:56px}
#main>.faq-section{margin-top:64px;margin-bottom:64px}
#main>.contact-section{margin-top:72px;margin-bottom:0}
.section-heading{margin-bottom:28px}
.gallery-section .section-heading,.faq-section .section-heading{margin-bottom:24px}
.section-heading p{line-height:1.5}
.site-footer .footer-grid{padding-top:44px;padding-bottom:36px}
/* Primary, outline and light CTAs share the reference's normal and hover states. */
.button:not(.whatsapp),.button.outline,.button.light{background:transparent;border:1px solid var(--accent);color:#b34c18;box-shadow:none;transition:background-color .22s,color .22s,border-color .22s,box-shadow .22s,transform .22s}
.button:not(.whatsapp):hover,.button.outline:hover,.button.light:hover,.button:not(.whatsapp):focus-visible{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 7px 18px #c4581926;transform:translateY(-2px)}
.service-card .button.light,.offer-card .button{background:#fff8ec;border-color:#d97942;color:#b34c18}
.service-card .button.light:hover,.offer-card .button:hover,.service-card .button.light:focus-visible,.offer-card .button:focus-visible{background:var(--accent);border-color:var(--accent);color:white}
.search-button{background:#fff8ec;border:1px solid #c96024;color:#b34c18;transition:background-color .22s,color .22s,border-color .22s}
.search-button>.icon{color:currentColor}
.search-button:hover,.search-button:focus-visible{background:var(--accent);border-color:#fff2dc;color:white}
.round-arrow{background:transparent;color:var(--accent);border:1px solid var(--accent);transition:background-color .22s,color .22s,border-color .22s,transform .22s}
.destination-card:hover .round-arrow,.destination-card:focus-visible .round-arrow{background:var(--accent);border-color:var(--accent);color:white;transform:translateX(3px)}
.site-header .login-link:hover,.site-header .login-link:focus-visible{background:var(--accent);border-color:var(--accent);color:white}
@media(max-width:900px){
 #main>.destinations,#main>.packages,#main>.about-section,#main>.gallery-section{margin-top:56px;margin-bottom:56px}
 #main>.service-grid,#main>.offer-section{margin-top:44px;margin-bottom:44px}
 #main>.faq-section{margin-top:48px;margin-bottom:48px}
 #main>.contact-section{margin-top:56px}
 .section-heading{margin-bottom:24px}
}
@media(max-width:600px){
 #main>.destinations,#main>.packages,#main>.about-section,#main>.gallery-section{margin-top:44px;margin-bottom:44px}
 #main>.service-grid,#main>.offer-section{margin-top:34px;margin-bottom:34px}
 #main>.faq-section{margin-top:40px;margin-bottom:40px}
 #main>.contact-section{margin-top:44px}
 .section-heading,.gallery-section .section-heading,.faq-section .section-heading{margin-bottom:20px}
 .site-footer .footer-grid{padding-top:32px;padding-bottom:28px}
}
@media(prefers-reduced-motion:reduce){.button,.search-button,.round-arrow{transition:none!important}.button:hover,.destination-card:hover .round-arrow{transform:none}}

/* Align About to the shared content edges and give the enquiry room to breathe. */
#main>.about-section{max-width:1320px;gap:clamp(28px,4.5vw,65px)}
.about-section .about-image{width:100%;border-radius:24px;min-height:350px}
.about-section .about-copy{padding:20px 0;max-width:none}
#main>.contact-section{margin-bottom:0}
.contact-section .contact-inner{padding-block:64px}
@media(max-width:900px){
 .about-section .about-image{min-height:320px}
 #main>.contact-section{margin-bottom:0}
 .contact-section .contact-inner{padding-block:48px}
}
@media(max-width:600px){
 #main>.about-section{gap:24px}
 .about-section .about-image{height:250px;min-height:250px;border-radius:18px}
 .about-section .about-copy{padding:0}
 #main>.contact-section{margin-bottom:0}
 .contact-section .contact-inner{padding-block:40px;gap:28px}
}

/* Enquiry remains the solid orange action; footer meets the banner directly. */
.enquiry-form .button[type="submit"]{background:var(--accent);color:#fff;border-color:var(--accent)}
.enquiry-form .button[type="submit"]:hover,.enquiry-form .button[type="submit"]:focus-visible{background:#c94b0c;border-color:#c94b0c;color:#fff}
.faq-list details[open] summary>.icon{transform:rotate(180deg)}
.gallery-item{cursor:default}

/* Complete reference footer with editable contact and support details. */
.site-footer .footer-grid{position:relative;z-index:1;grid-template-columns:minmax(0,1.65fr) repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,65px)}
.footer-brand .contact-link{display:flex;align-items:flex-start;gap:10px;line-height:1.6;overflow-wrap:anywhere;max-width:100%}
.footer-brand .contact-link .icon{margin-top:2px;flex:none}
.site-footer .footer-bottom{padding-right:86px}
.footer-whatsapp{position:absolute;right:28px;bottom:24px;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#25d366;color:white!important;box-shadow:0 4px 18px #0003;z-index:2;transition:transform .25s,background .25s}
.footer-whatsapp .icon{width:30px;height:30px;stroke-width:1.8}
.footer-whatsapp:hover{background:#1bb858;transform:translateY(-3px)}
@media(max-width:900px){.site-footer .footer-grid{grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr))}.site-footer .footer-grid>div:last-child{grid-column:2/4}}
@media(max-width:600px){.site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 18px}.site-footer .footer-grid>div:last-child{grid-column:auto}.site-footer .footer-bottom{padding-right:60px;align-items:flex-start}.footer-whatsapp{width:44px;height:44px;right:18px;bottom:20px}.footer-whatsapp .icon{width:26px;height:26px}.footer-brand .contact-link{font-size:12px}}
