/* Shared public-site layout and interaction refinements. */
.button{max-width:100%;min-height:48px;line-height:1.4;white-space:normal;transition:background-color .2s,box-shadow .2s,transform .2s,border-color .2s}
.button:focus-visible,.dangerous-banner-link:focus-visible,.aml-image-link:focus-visible{outline:3px solid #dca927;outline-offset:5px}
.button:active{transform:translateY(1px);box-shadow:none}
.button[disabled]{transform:none;box-shadow:none}
.button>span[aria-hidden="true"]{flex-shrink:0;transition:transform .2s}
.hero-layout>*,.service-grid>*,.route-fields>*,.details-grid>*,.review-layout>*,.summary-row>*,.contact-grid>*,.about-grid>*,.resources>*,.aml-layout>*{min-width:0}
.footer-links,.copyright,.membership-links{flex-wrap:wrap}
.footer-links a,.copyright a,.membership-links a,.office-card a,.summary-row strong,.summary-route strong{overflow-wrap:anywhere}
.office-card,.office-detail,.office-header nav{min-width:0}
.office-header nav a{display:inline-flex;align-items:center;min-height:44px}
.office-card a{padding-block:6px}
.policy-banner-actions{justify-content:space-between}
.policy-banner-actions .dangerous-banner-mobile-button{display:inline-flex}
.dangerous-banner-link{position:relative;isolation:isolate;transition:box-shadow .25s,transform .25s}
.dangerous-banner-cta{position:absolute;left:37.05%;top:60.6%;width:21.4%;height:11.8%;display:flex;align-items:center;justify-content:center;gap:.65em;border-radius:clamp(8px,1.2vw,24px);background:linear-gradient(130deg,#ffe483,#edb92d);color:#002b60;font:750 clamp(16px,2vw,38px)/1 Inter,Arial,sans-serif;box-shadow:0 4px 14px #001b3630;transition:background .2s,box-shadow .2s}
.dangerous-banner-cta svg{width:1em;height:1em;transition:transform .2s}
.policy-actions{gap:14px}
.dangerous-guide-fullsize{min-height:44px;line-height:1.5}
.aml-page{font-family:Inter,Arial,sans-serif}
.aml-page>.header-logos{padding:12px 24px;display:flex;justify-content:center;background:white}
.aml-page>.header-logos .logo-strip{width:min(550px,100%);margin:0}
.aml-page .logo-strip img{width:100%;height:auto;object-fit:contain}
.aml-page .header{background:white;border-block:1px solid #e1e9f0}
.aml-page .nav-inner{height:auto;min-height:76px;gap:24px;position:relative}
.aml-page .nav-inner #navigation{position:static;display:flex;margin:0 auto 0 0;padding:0;gap:26px;box-shadow:none;background:none}
.aml-page .nav-quote{border-radius:999px;gap:12px;flex-shrink:0}
.aml-page .shipment-button-icon{width:21px;height:21px}
.aml-page .location-wave,.aml-page .utility-divider{display:none}
.aml-page .header-world,.aml-page .utility{background:#082e55}
.aml-page .utility-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:auto;gap:14px;padding-block:16px;letter-spacing:0}
.aml-page .utility-item{display:flex;align-items:center;justify-content:center;gap:7px;font-size:.8rem;line-height:1.5;color:white;min-width:0}
.aml-page .utility-item strong,.aml-page .utility-item svg{color:#f5cf70}
.aml-page .utility-item svg{width:17px;height:17px}
.aml-page .aml-hero{padding:clamp(16px,2vw,28px) 0 0;background:#082e55;overflow:visible}
.aml-image-link{position:relative;display:block;width:min(1400px,calc(100% - 48px));margin:auto;border-radius:18px;overflow:hidden;line-height:0}
.aml-hero-image{width:100%;height:auto;aspect-ratio:1600/683;object-fit:contain}
.aml-image-zoom{position:absolute;right:16px;bottom:16px;padding:9px 13px;border:1px solid #ffffff70;border-radius:99px;background:#062c51e8;color:white;font-size:.8rem;line-height:1.5;display:flex;align-items:center;gap:8px;transition:background .2s}
.aml-image-zoom svg{width:17px;height:17px}
.aml-page .aml-hero-copy{position:static;inset:auto;padding:20px 0 26px;pointer-events:auto;display:block}
.aml-hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.aml-page .aml-hero-actions .button{border-radius:999px;font-size:.9375rem;gap:18px}
.button-outline{border-color:#caddeb80;color:#fff;background:#ffffff0a}
.aml-layout{grid-template-columns:260px minmax(0,1fr);gap:28px;padding-top:36px}
.aml-toc{top:24px;max-height:calc(100dvh - 48px);overflow:auto;padding:18px}
.aml-toc summary{cursor:pointer;padding:8px 2px;font-size:.94rem;line-height:1.5;font-weight:700;color:#0d2e4c}
.aml-toc nav{position:static;inset:auto;display:grid!important;grid-template-columns:minmax(0,1fr);width:100%;margin:10px 0 0;padding:0;gap:2px;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.aml-toc nav a{padding:10px 8px;min-height:44px;line-height:1.5;white-space:normal;border-radius:8px;font-size:.875rem;overflow-wrap:anywhere}
.aml-content{padding:clamp(22px,3vw,40px);overflow-wrap:anywhere}
.aml-section{scroll-margin-top:24px;padding-block:10px 28px}
.aml-section+.aml-section{padding-top:28px}
.aml-section p{font-size:1rem;line-height:1.85;max-width:76ch}
.aml-page .footer-logos{width:100%;padding:20px;border:1px solid #dfe8ef;border-radius:18px;background:white}
.aml-page .footer-logos .logo-strip{width:min(600px,100%);margin:auto}
.aml-page .membership-links{display:flex;justify-content:center;gap:12px 24px;margin-top:16px;font-size:.8rem;line-height:1.6}
.aml-page .footer-brand .brand-logo-frame{display:block;width:58px}
.aml-page .footer-brand img{position:static;width:100%;height:auto}
.aml-page .footer-brand{flex-wrap:wrap}
@media(hover:hover) and (pointer:fine){
 .button:not(:disabled):hover{transform:translateY(-3px);box-shadow:0 10px 24px #082e5526}
 .button:hover>span[aria-hidden="true"]:last-child,.dangerous-banner-link:hover .dangerous-banner-cta svg{transform:translateX(4px)}
 .button-gold:hover{background:#ffe18b}.button-navy:hover{background:#164b77}.button-outline:hover{background:#ffffff19;border-color:#f5cf70}
 .dangerous-banner-link:hover{transform:translateY(-3px);box-shadow:0 18px 40px #082e5538}
 .dangerous-banner-link:hover .dangerous-banner-cta{background:#ffe38a;box-shadow:0 0 0 3px #fff5,0 8px 24px #001b3640}
 .aml-image-link:hover .aml-image-zoom{background:#164b77}.aml-toc nav a:hover{background:#edf4f9;color:#003160}
}
@media(max-width:1024px){
 .aml-page .nav-inner{gap:16px}.aml-page .nav-inner #navigation{gap:18px}.aml-page .nav-quote{padding-inline:18px;font-size:.875rem}
 .aml-page .utility-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:950px){
 .aml-layout{grid-template-columns:minmax(0,1fr);gap:20px}.aml-toc{position:static;max-height:none}
 .aml-toc nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px}
 .aml-page .menu-toggle{display:flex;order:0;width:44px;height:44px;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #d7e4ee;border-radius:50%}
 .aml-page .nav-inner #navigation{display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;z-index:20;margin:0;padding:12px;background:#fff;box-shadow:0 14px 28px #001d3826;border-radius:0 0 16px 16px}
 .aml-page .nav-inner #navigation.open{display:flex;flex-direction:column;gap:0}.aml-page #navigation a{padding:14px 16px}
 .aml-page .nav-quote{margin-left:auto}
 .enquiry-top{flex-wrap:wrap}.step-track{max-width:100%}.step-track li{min-width:0}
 .contact-grid,.resources{grid-template-columns:minmax(0,1fr)}.contact-details{padding-left:0;border-left:0}
}
@media(max-width:600px){
 .container,.policy-shell{width:calc(100% - 32px)}.policy-nav-row .button{width:100%}
 .service-grid,.about-grid{grid-template-columns:minmax(0,1fr)}
 .goldcross-showcase .nav-inner{grid-template-columns:44px minmax(0,1fr) auto;gap:8px}
 .goldcross-showcase .nav-inner .nav-quote{font-size:.8125rem;padding:12px 14px;gap:8px;min-height:46px}
 .goldcross-showcase .header-world .utility-item{font-size:.75rem;line-height:1.55;text-align:left;white-space:normal}
 .enquiry-card{padding:22px 16px}.step-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.step-track button{width:100%;min-height:48px}
 .step-actions{min-width:0;flex-wrap:wrap}.field input,.field select,.field textarea,.dimension-fields input{font-size:16px}
 .review-layout,.details-grid,.route-fields{grid-template-columns:minmax(0,1fr)}
 .summary-row{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
 .booking-submit .button,.whatsapp-panel .button{gap:12px;padding-inline:14px}
 .policy-banner-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.policy-banner-actions .button{width:100%;justify-content:center}
 .dangerous-banner-cta{display:none}.policy-actions .button{width:100%}
 .aml-page>.header-logos{padding:12px 16px}.aml-page .nav-inner{min-height:68px}
 .aml-page .utility-inner{gap:10px 14px;padding-block:14px}.aml-page .utility-item{justify-content:flex-start;font-size:.75rem}
 .aml-image-link{width:calc(100% - 24px);border-radius:10px}.aml-image-zoom{right:7px;bottom:7px;font-size:0;padding:7px}.aml-image-zoom svg{width:16px;height:16px}
 .aml-page .aml-hero-copy{padding:24px 0 28px}
 .aml-page .aml-hero-copy :is(.eyebrow,h1,.subtitle,.supporting-text){position:static;clip:auto;clip-path:none;width:auto;height:auto;overflow:visible;white-space:normal}
 .aml-page .aml-hero-copy .eyebrow{margin:0 0 8px}.aml-page .aml-hero-copy h1{font-size:2rem;letter-spacing:-.035em;color:white}
 .aml-page .aml-hero-copy .subtitle{font-size:1.12rem;margin-top:10px;color:#f5cf70}.aml-page .aml-hero-copy .supporting-text{font-size:.9375rem;line-height:1.7;margin-top:12px}
 .aml-hero-actions{margin-top:22px;gap:10px}.aml-page .aml-hero-actions .button{flex:1 1 140px;padding-inline:14px;min-height:48px;gap:10px;font-size:.875rem}
 .aml-toc nav{grid-template-columns:minmax(0,1fr)}.aml-layout{padding-top:22px;padding-bottom:36px}
 .aml-content{padding:22px 18px;border-radius:16px}.aml-section h2{font-size:1.35rem;line-height:1.4}.aml-section h3{font-size:1.15rem;line-height:1.5}
 .aml-page .footer-logos{padding:16px 10px}.footer{gap:20px}.footer-links{gap:10px 18px}.footer-links a,.copyright a{padding-block:6px}.copyright{align-items:flex-start;gap:12px 18px}.copyright>a:first-of-type{margin-left:0}
 .office-shell{padding-inline:16px}.office-card{padding:22px 18px}.office-main h1{overflow-wrap:anywhere}
}
@media(max-width:360px){.goldcross-showcase .media-controls{gap:3px}.goldcross-showcase .video-time{display:none}.goldcross-showcase .hero-copy{max-width:calc(100% - 28px)}.step-track button{font-size:.7rem}.specialist-links{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.button,.dangerous-banner-link,.dangerous-banner-cta,.dangerous-banner-cta svg,.aml-image-zoom{transition:none}.button:hover,.button:active,.dangerous-banner-link:hover,.button:hover>span,.dangerous-banner-link:hover svg{transform:none!important}}

/* UK contact masthead */
.goldcross-showcase>.header-logos.contact-masthead{display:block;height:auto;min-height:106px;padding:14px 28px;background:#fff;border-bottom:1px solid #e6edf3}
.masthead-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,510px) minmax(0,1fr);align-items:center;gap:24px;width:min(1480px,100%);margin:auto}
.masthead-inner .logo-strip{justify-self:center}
.masthead-contact{display:flex;align-items:center;gap:12px;min-width:0;color:#082e55;text-align:left}
.masthead-contact>div{min-width:0}.masthead-email{justify-self:end}
.masthead-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#f5f8fb;border:1px solid #e6edf3;color:#b58a2e;flex-shrink:0}
.masthead-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}
.masthead-label{margin:0 0 4px;font:600 .625rem/1.5 Inter,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#6b7e8e}
.masthead-contact a{display:block;width:fit-content;max-width:100%;padding:3px 0;font:600 .875rem/1.55 Inter,Arial,sans-serif;text-decoration:none;text-underline-offset:4px;transition:color .2s}
.masthead-phones a{white-space:nowrap}.masthead-email a{overflow-wrap:anywhere}
.masthead-contact a:hover{color:#96701b;text-decoration:underline}.masthead-contact a:focus-visible{outline:3px solid #dca927;outline-offset:4px;border-radius:3px}
.dangerous-banner-link .dangerous-home-banner{position:relative;z-index:0;display:block;width:100%;height:auto;opacity:1;visibility:visible;aspect-ratio:8/3}
.dangerous-banner-cta{z-index:1}
@media(max-width:1150px) and (min-width:901px){.masthead-inner{grid-template-columns:minmax(0,1fr) minmax(260px,380px) minmax(0,1fr);gap:18px}.masthead-contact{gap:8px}.masthead-icon{width:34px;height:34px}.masthead-contact a{font-size:.8125rem}}
@media(max-width:900px){.goldcross-showcase>.header-logos.contact-masthead{padding:12px 24px}.masthead-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 24px}.masthead-inner .logo-strip{grid-column:1/-1;grid-row:1;width:min(440px,100%);margin:0 auto}.masthead-contact{grid-row:2}.masthead-email{justify-self:end}.masthead-phones{justify-self:start}.masthead-contact a{min-height:32px;display:flex;align-items:center}.masthead-email a{display:block}}
@media(max-width:600px){.goldcross-showcase>.header-logos.contact-masthead{padding:10px 16px 12px}.masthead-inner{gap:12px 14px}.masthead-icon{display:none}.masthead-label{font-size:.5625rem;letter-spacing:.08em;margin-bottom:2px}.masthead-contact a{font-size:.8125rem;line-height:1.6;padding-block:5px;min-height:32px}.masthead-email{align-self:start}.masthead-inner .logo-strip{max-width:360px}.masthead-contact{align-items:flex-start}.masthead-phones{padding-right:12px;border-right:1px solid #e6edf3;width:100%}}

/* Office contact actions */
.offices .office-whatsapp,.office-card .office-whatsapp{display:block;width:fit-content;max-width:100%;color:#176a4c}
.office-whatsapp small{display:block;margin-top:2px;font-size:.75rem;font-weight:400;line-height:1.5;color:#5e7380;white-space:normal}
.offices a[href^="tel:"],.offices a[href^="mailto:"],.offices .office-whatsapp{padding-block:5px}
.office-whatsapp:hover span,.offices a[href^="tel:"]:hover,.offices a[href^="mailto:"]:hover,.office-card a[href^="tel:"]:hover,.office-card a[href^="mailto:"]:hover{text-decoration:underline;text-underline-offset:4px}
.office-whatsapp:focus-visible,.offices a:focus-visible,.office-card a:focus-visible{outline:3px solid #dca927;outline-offset:4px;border-radius:3px}

/* Keep postal address lines readable on small screens. */
.contact-section p.office-address br{display:initial}
