:root{--ink:#192b28;--gold:#b58b34;--cream:#f6f3ec;--muted:#626962}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.skip{position:absolute;top:-70px;background:white;padding:15px;z-index:10}.skip:focus{top:0}header{display:flex;align-items:center;justify-content:space-between;padding:20px 5.5%;gap:25px;border-bottom:1px solid #d9d8d0;background:var(--cream)}.brand{display:flex;align-items:center;gap:14px}.brand img{width:47px;height:47px;object-fit:contain;mix-blend-mode:multiply}.brand span{font:21px Georgia,serif}.brand small{display:block;font:9px Arial,sans-serif;letter-spacing:2.3px;margin-top:7px}nav{display:flex;gap:28px;font-size:13px}nav a:hover,.text-link:hover{color:var(--gold)}.languages{display:flex;gap:3px}.languages button{border:0;background:transparent;color:var(--muted);padding:8px;cursor:pointer;font-size:11px}.languages button[aria-pressed=true]{background:var(--ink);color:white}.hero{display:grid;grid-template-columns:1.12fr 1fr;min-height:640px}.hero-copy{padding:80px 6% 70px 10%}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:bold;line-height:1.8;margin:0 0 27px}.hero h1{font:clamp(42px,4.9vw,76px)/1.07 Georgia,serif;letter-spacing:-2.5px;margin:0 0 30px;font-weight:normal}em{font-weight:normal;color:var(--gold)}.intro{font-size:15px;line-height:1.85;max-width:450px;color:var(--muted);margin-bottom:30px}.button{display:inline-flex;justify-content:space-between;gap:40px;align-items:center;padding:18px 25px;font-size:12px;font-weight:bold;transition:transform .2s}.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:#fff}.dark{background:var(--ink);color:#fff}.subnote{font-size:11px;color:var(--muted);margin-top:16px}.hero-art{background:var(--ink);padding:33px 40px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.hero-art:before,.hero-art:after{content:'';position:absolute;width:450px;height:450px;border:1px solid #ffffff12;border-radius:50%;pointer-events:none}.hero-art:before{top:-180px;right:-220px}.hero-art:after{bottom:-260px;left:-100px}.art-top{font:11px Georgia,serif;letter-spacing:5px;color:#ddca9f}.logo-panel{background:#fff;margin:35px auto;width:min(100%,380px);box-shadow:16px 16px 0 #ffffff08;transform:rotate(-3deg);position:relative}.logo-panel img{width:100%;display:block}.art-bottom{display:flex;justify-content:space-between;gap:15px;color:#d7ddd7;font-size:8px;letter-spacing:1.3px;line-height:1.7}.language-strip{padding:23px 5.5%;display:flex;justify-content:space-between;gap:20px;font-size:12px;border-bottom:1px solid #d9d8d0}.language-strip>span:last-child{font-family:Georgia,serif}.language-strip i{font-style:normal;color:var(--gold);padding:0 14px}.section{padding:95px 8%}.practice{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}h2{font:clamp(34px,3.4vw,50px)/1.15 Georgia,serif;letter-spacing:-1px;margin:0 0 26px}.section-head>p:last-child,.contact>div>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);max-width:350px}.practice-list article{border-top:1px solid #c7cbc3;padding:21px 0;display:grid;grid-template-columns:35px 1fr;gap:15px}.practice-list article:last-child{border-bottom:1px solid #c7cbc3}.practice-list article>span{font-size:10px;color:var(--gold);padding-top:7px}h3{font:24px Georgia,serif;margin:0 0 9px}.practice-list p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}.office{background:var(--ink);color:var(--cream);padding:85px 8%;display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.office h2{font-size:58px}.office .eyebrow{color:#cbb47e}.office-copy .large{font:27px/1.45 Georgia,serif;margin-top:0}.office-copy>p:not(.large){font-size:14px;color:#bfc8c2;line-height:1.9}.steps{margin-top:35px}.steps>div{display:flex;gap:25px;border-top:1px solid #ffffff28;padding:18px 0}.steps span{color:#d5b566;font:14px Georgia,serif}.steps p{font-size:12px;margin:0;line-height:1.8;color:#d8ded8}.seal{display:flex;align-items:center;gap:15px;font:32px Georgia,serif;color:#d5b566;border-top:1px solid #ffffff28;padding-top:24px;width:200px}.seal span{font:9px Arial,sans-serif;letter-spacing:4px}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:center}.phone{display:block;font:28px Georgia,serif;margin:30px 0 24px}.address{background:#ede9de;padding:45px;position:relative;border-top:3px solid var(--gold)}.address h3{font-size:32px;margin-bottom:20px}.address>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted)}.text-link{font-size:12px;display:inline-block;border-bottom:1px solid var(--gold);padding-bottom:7px;margin-top:12px}.address .address-note{font-size:11px!important;margin-top:28px}.location-symbol{position:absolute;top:28px;right:30px;font:40px Georgia,serif;color:var(--gold)}footer{padding:35px 5.5%;border-top:1px solid #c7cbc3;display:flex;gap:45px;justify-content:space-between;align-items:center}footer strong{font:19px Georgia,serif;display:block}footer span{font-size:10px;display:block;margin-top:8px}footer p{max-width:430px;font-size:10px;line-height:1.8;color:var(--muted)}footer small{font-size:9px;white-space:nowrap}footer small span{display:inline;font-size:9px}[dir=rtl] .hero-copy{padding-left:6%;padding-right:10%}[dir=rtl] .hero h1{letter-spacing:0;line-height:1.4}[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{font-family:Tahoma,Arial,sans-serif}[dir=rtl] .eyebrow{letter-spacing:0}[dir=rtl] .phone{text-align:right}[dir=rtl] .location-symbol{left:30px;right:auto}@media(max-width:800px){header{padding:17px 5%;flex-wrap:wrap;gap:15px}.brand span{font-size:18px}.brand img{width:35px;height:35px}nav{order:3;width:100%;justify-content:center;gap:35px;font-size:12px}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7%}.hero h1{font-size:49px}.hero-art{min-height:370px;padding:25px 7%}.logo-panel{max-width:250px;margin:23px auto}.language-strip{flex-direction:column;text-align:center;gap:14px;padding:25px 5%}.language-strip i{padding:0 6px}.section{padding:60px 7%}.practice,.office,.contact{grid-template-columns:1fr;gap:35px}.office{padding:60px 7%}.office h2{font-size:48px}.office-copy .large{font-size:24px}.seal{display:none}.address{padding:32px 25px}.phone{font-size:25px}footer{flex-direction:column;align-items:flex-start;gap:15px;padding:30px 7%}footer p{margin:0}.hero h1 em{font-size:.85em}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.portrait-panel{width:100%;margin:38px auto;position:relative;z-index:1;box-shadow:0 18px 42px #0004}.portrait-panel img{display:block;width:100%;height:auto}.hero-art{padding-left:25px;padding-right:25px}@media(max-width:800px){.hero-art{min-height:0;padding:28px 5%}.portrait-panel{margin:26px auto;max-width:640px}}

.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.whatsapp{background:#e2e9df;color:#192b28}.opening-hours{font-size:12px!important;margin-top:22px}.booking-section,.reviews-section{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;border-top:1px solid #c7cbc3}.booking-section{background:#ede9de}.booking-section>div>p:not(.eyebrow),.reviews-section p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted);max-width:500px}.booking-facts{border-left:2px solid var(--gold);padding:10px 0 10px 30px}.booking-section .subnote{font-size:11px!important}.review-qr{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;gap:10px}.review-qr img{width:200px;height:200px;object-fit:contain;background:white;padding:8px}.practice-list details{margin-top:13px}.practice-list summary{font-size:11px;color:#8b671c;cursor:pointer}.practice-list details p{margin-top:10px}.hero .button{margin-right:8px}.review-qr:hover{color:var(--gold)}[dir=rtl] .booking-facts{border-left:0;border-right:2px solid var(--gold);padding:10px 30px 10px 0}@media(max-width:800px){.booking-section,.reviews-section{grid-template-columns:1fr;gap:30px}.booking-facts{padding-left:20px}.review-qr{align-items:flex-start}.contact-actions .button{gap:15px;padding:16px 18px}}
