/* Responsive enhancement; existing brand and content retained. */
html{scroll-behavior:smooth;scroll-padding-top:110px;-webkit-text-size-adjust:100%}body{overflow-wrap:break-word}*,*:before,*:after{box-sizing:border-box}img{max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b1915e;outline-offset:4px}.header{position:fixed!important;top:0!important;transition:transform .32s ease,background .3s ease,box-shadow .3s ease;padding-top:env(safe-area-inset-top);z-index:100}.header.is-scrolled,.header.menu-open,.header:has([aria-expanded=true]),.header:has(details[open]){background:rgba(26,35,62,.97);box-shadow:0 5px 28px #10182f24;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.header.nav-away{transform:translateY(-110%)}.header.is-scrolled .header-row{min-height:80px}.header-row{transition:min-height .3s ease}.preview-note{position:relative;z-index:101}.back-top{position:fixed;inset-inline-end:22px;bottom:calc(22px + env(safe-area-inset-bottom));z-index:90;width:46px;height:46px;border-radius:50%;border:1px solid #b1915e;background:#283154;color:#fff;box-shadow:0 5px 22px #0002;font-size:22px;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s,transform .25s}.back-top.visible{opacity:1;visibility:visible;transform:none}.section,.contact,.footer{scroll-margin-top:100px}.reveal-ready{animation:arrival .65s ease both}@keyframes arrival{from{opacity:.25;transform:translateY(18px)}to{opacity:1;transform:none}}.main-nav,.mega-grid,.split,.contact-grid{min-width:0}.main-nav a,.practice-tab{overflow-wrap:anywhere}
@media(hover:hover){.practice-card,.article-card{transition:transform .25s ease,box-shadow .25s ease}.practice-card:hover,.article-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px #17223918}}
@media(max-width:1100px){.header-row{gap:12px}.main-nav{gap:14px;font-size:14px}}
@media(max-width:1000px){.header-row,.header.is-scrolled .header-row{min-height:78px;flex-wrap:wrap}.header .main-nav{max-height:calc(100dvh - 100px - env(safe-area-inset-top));overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(22px,env(safe-area-inset-bottom))}.header.menu-open{max-height:100dvh;overflow-y:auto}.nav-toggle,.language-dropdown summary,.about-dropdown summary{min-height:44px}.main-nav>a,.mega-trigger{min-height:48px}.mega-menu{max-height:none;overflow:visible}.practice-tabs{max-height:none!important;overflow:visible!important}.practice-browser.tabs-ready{display:block}.practice-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;gap:4px}.practice-tab{min-height:52px;white-space:normal}.tabs-ready .mega-grid{overflow:visible}.tabs-ready .mega-group li a{min-height:48px}.about-dropdown>div,.about-dropdown ul{max-width:100%}body.mobile-menu-open{overflow:hidden}}
@media(max-width:600px){.container{width:calc(100% - 36px);max-width:100%}.header-row{gap:8px}.logo img{width:125px!important;height:48px!important}.language-dropdown summary{padding:8px;font-size:12px}.nav-toggle{padding:8px;font-size:13px}.hero-carousel{min-height:100svh}.hero-carousel .container{padding-top:150px;padding-bottom:68px}.hero-carousel h1{font-size:clamp(30px,8.7vw,42px);line-height:1.16}.hero-carousel p{font-size:16px;line-height:1.7}.hero-carousel .actions{display:flex;flex-wrap:wrap}.hero-carousel .actions a{min-height:48px}.hero-scene{object-position:62% center}.section{padding-block:60px}.introduction .split{gap:30px}.introduction-figure .about-image{height:clamp(280px,90vw,420px)}.practice-tabs{grid-template-columns:1fr}.practice-tab{font-size:14px;min-height:48px}.tabs-ready .mega-grid{padding:22px 16px}.mega-group h2{overflow-wrap:anywhere}.back-top{inset-inline-end:16px;bottom:calc(16px + env(safe-area-inset-bottom))}.contact-details a{overflow-wrap:anywhere}.footer-links{flex-wrap:wrap}.about-dropdown{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.header.nav-away{transform:none}}
/* Keep the owner review label clear of the navigation and logo. */
.preview-note{position:fixed;top:auto;bottom:0;inset-inline-start:0;inset-inline-end:0;width:100%;font-size:10px;padding:4px 8px;text-align:center;z-index:89}.back-top{bottom:calc(42px + env(safe-area-inset-bottom))}

/* Direct WhatsApp contact, shared by every customer-facing preview page. */
.whatsapp-widget{position:fixed;inset-inline-end:max(22px,env(safe-area-inset-right));bottom:calc(48px + env(safe-area-inset-bottom));z-index:92;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 36px);min-height:68px;padding:8px 9px 8px 22px;border:1px solid #c5b18b66;border-radius:999px;background:#202943;color:#fff!important;text-decoration:none!important;box-shadow:0 10px 32px #111b3c38;font-family:Arial,sans-serif;line-height:1.2;isolation:isolate;touch-action:manipulation;animation:whatsapp-arrive .5s ease-out backwards;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease,visibility .2s ease}
.whatsapp-widget__copy{display:flex;flex-direction:column;gap:4px;text-align:start;min-width:0}.whatsapp-widget__channel{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#cdbb99}.whatsapp-widget__label{font-size:14px;font-weight:600;white-space:nowrap}.whatsapp-widget__icon{position:relative;display:grid;place-items:center;width:50px;height:50px;flex:0 0 50px;border-radius:50%;background:#25d366;color:#fff}.whatsapp-widget__icon:after{content:"";position:absolute;inset:0;border:1px solid #25d366;border-radius:inherit;z-index:-1;animation:whatsapp-pulse 1.8s ease-out 2}.whatsapp-widget__icon svg{display:block;width:28px;height:28px}.whatsapp-widget:focus-visible{outline:3px solid #b1915e;outline-offset:5px}.has-whatsapp-widget .back-top{bottom:calc(132px + env(safe-area-inset-bottom))}body.mobile-menu-open .whatsapp-widget{opacity:0;visibility:hidden;pointer-events:none}
[dir=rtl] .whatsapp-widget{inset-inline-end:max(22px,env(safe-area-inset-left));padding:8px 22px 8px 9px;font-family:Arial,Tahoma,sans-serif}[dir=rtl] .whatsapp-widget__channel{letter-spacing:0}
@keyframes whatsapp-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes whatsapp-pulse{0%{opacity:.45;transform:scale(1)}100%{opacity:0;transform:scale(1.5)}}
@media(hover:hover){.whatsapp-widget:hover{transform:translateY(-3px);box-shadow:0 14px 36px #111b3c48}.whatsapp-widget:hover .whatsapp-widget__icon{background:#20bd5a}}
@media(max-width:600px){.whatsapp-widget{inset-inline-end:max(16px,env(safe-area-inset-right));bottom:calc(44px + env(safe-area-inset-bottom));min-height:60px;padding:6px 7px 6px 16px;gap:10px}.whatsapp-widget__icon{width:46px;height:46px;flex-basis:46px}.whatsapp-widget__label{font-size:13px}.whatsapp-widget__channel{font-size:9px}[dir=rtl] .whatsapp-widget{inset-inline-end:max(16px,env(safe-area-inset-left));padding:6px 16px 6px 7px}.has-whatsapp-widget .back-top{bottom:calc(120px + env(safe-area-inset-bottom))}}
@media(max-width:320px){.whatsapp-widget__label{white-space:normal;max-width:175px}}
@media(prefers-reduced-motion:reduce){.whatsapp-widget,.whatsapp-widget__icon:after{animation:none!important;transition:none!important}.whatsapp-widget:hover{transform:none}}

/* Shared, user-confirmed office addresses and map links. */
.office-addresses{display:grid;gap:20px;margin-block:16px;max-width:640px}.office-addresses>div{min-width:0}.office-addresses strong{display:block;font:600 11px/1.6 Arial,Helvetica,sans-serif;color:#9b7f51;margin-bottom:6px}.office-addresses address{font-style:normal;font-size:14px;line-height:1.8;margin:0!important}.office-addresses address a{display:inline-block;font-size:14px!important;line-height:1.8!important;color:inherit!important;text-decoration:underline!important;text-underline-offset:4px;overflow-wrap:anywhere;max-width:100%}.office-addresses address a:hover{color:#94764a!important}[dir=rtl] .office-addresses strong{font-family:Tahoma,Arial,sans-serif}.h40-whatsapp-fallback{display:inline-block;margin-top:12px;font-size:12px;color:#725b36}
