:root{--dark:#192019;--cream:#f5f0e7;--gold:#d9ae70}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:#1b241c;font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.header{position:absolute;z-index:10;top:0;left:0;right:0;padding:25px 5.5%;display:flex;align-items:center;justify-content:space-between;color:white;border-bottom:1px solid #ffffff44}.wordmark{font-family:'Playfair Display',serif;font-weight:700;font-size:24px;letter-spacing:.01em}.wordmark span,.footer-logo span{color:var(--gold)}.wordmark small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:.35em;margin-top:6px}.header nav{display:flex;gap:30px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.header nav a:hover,.textlink:hover{color:var(--gold)}.navcta{border:1px solid #ffffff80;padding:13px 20px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.hamburger{display:none;background:none;border:0;color:white;font-size:25px}.hero{min-height:780px;height:100vh;position:relative;background:linear-gradient(90deg,#10171199,#10171122),url('https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?auto=format&fit=crop&w=2200&q=85') center/cover;color:white;display:flex;align-items:center;padding:12% 9% 8%}.hero-content{position:relative;max-width:800px}.eyebrow{font-size:11px;letter-spacing:.23em;font-weight:700;text-transform:uppercase;color:#e4cba7}.eyebrow.dark{color:#94714b}.hero h1,.intro h2,.statement h2,.madeira h2,.canada h2,.closing h2{font-family:'Playfair Display',serif;font-weight:500;line-height:1.12;letter-spacing:-.035em}.hero h1{font-size:clamp(60px,8vw,116px);margin:24px 0}.hero em,.intro em,.statement em,.madeira em,.canada em{font-weight:500;color:#dfbd89}.hero p{max-width:560px;line-height:1.9;color:#f4eee3;font-size:16px}.btn{display:inline-block;padding:17px 24px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn.cream{background:var(--cream);color:#1b241c;margin-top:22px}.hero-bottom{position:absolute;bottom:30px;left:9%;right:9%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.2em}.intro{text-align:center;padding:120px 20px 110px}.intro h2{font-size:clamp(40px,5vw,70px);margin:20px 0}.intro em,.madeira em{color:#a97849}.intro p{max-width:590px;margin:auto;color:#68685e;line-height:1.9}.brand{display:grid;grid-template-columns:1fr 1fr;min-height:660px}.brand-photo{min-height:620px;position:relative;background-size:cover;background-position:center}.photo-allora{background-image:url('https://images.unsplash.com/photo-1579751626657-72bc17010498?auto=format&fit=crop&w=1300&q=85')}.photo-nolita{background-image:url('https://images.unsplash.com/photo-1568901346375-23c9450c58cd?auto=format&fit=crop&w=1300&q=85')}.photo-tag{position:absolute;bottom:28px;left:34px;background:#171b17cc;color:white;padding:12px 18px;font-size:11px;letter-spacing:.18em}.brand-copy{padding:90px 10%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.brand-allora .brand-copy{background:#293b30;color:white}.brand-nolita .brand-copy{background:#e6d9c5;color:#1d1d1a}.brand h2{font:700 clamp(65px,7vw,108px) 'Playfair Display',serif;letter-spacing:-.07em;margin:10px 0}.dot{color:#c78c5b}.rule{height:1px;width:80px;background:#bf9469;margin:6px 0 28px}.brand h3{font:500 28px 'Playfair Display',serif;margin:0 0 18px}.brand p{line-height:1.9;max-width:460px;color:inherit;opacity:.8}.tags{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 30px}.tags span{border:1px solid currentColor;opacity:.8;padding:9px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px}.btn.light{background:#e9d9bd;color:#253326}.btn.darkbtn{background:#242a23;color:white}.textlink{font-size:12px;text-decoration:underline;text-underline-offset:5px}.statement{background:#161f1a;color:white;text-align:center;padding:125px 20px;position:relative;overflow:hidden}.statement h2{font-size:clamp(44px,5.6vw,78px);margin:28px 0}.statement p{max-width:620px;line-height:1.9;color:#bfc5bc;margin:auto}.line-art{font-size:90px;color:#a67f50;margin-top:25px}.madeira{display:grid;grid-template-columns:1fr 1fr;background:#eae3d7}.madeira-image{min-height:620px;background:url('https://images.unsplash.com/photo-1512621776951-a57141f2eefd?auto=format&fit=crop&w=1200&q=85') center/cover}.madeira-copy{padding:90px 11%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.madeira h2{font-size:clamp(50px,6vw,82px);margin:25px 0}.madeira p{line-height:1.9;color:#64665e}.location-links{display:flex;flex-direction:column;gap:20px;margin-top:25px;font-weight:700;font-size:13px}.location-links a{text-decoration:underline;text-underline-offset:6px}.canada{text-align:center;background:#344638;color:white;padding:120px 20px}.canada h2{font-size:clamp(48px,6vw,82px);margin:28px 0}.canada p{max-width:570px;line-height:1.9;margin:0 auto 30px;color:#e2e9df}.outline{border:1px solid #fff;color:#fff}.canada small{display:block;opacity:.65;margin-top:24px}.closing{text-align:center;padding:115px 20px}.closing h2{font-size:clamp(48px,6vw,80px);margin:20px 0 60px}.closing-grid{display:flex;justify-content:center;gap:130px;text-align:left}.closing-grid h3{font:600 36px 'Playfair Display',serif}.closing-grid a{display:block;margin:13px 0;font-size:13px;text-decoration:underline;text-underline-offset:4px}footer{background:#151b16;color:#ddd;padding:45px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px}.footer-logo{font:700 24px 'Playfair Display',serif}.language{position:fixed;right:22px;bottom:23px;z-index:50}.lang-toggle{background:#263c2d;color:white;border:1px solid #ffffff66;border-radius:50%;width:65px;height:65px;box-shadow:0 8px 28px #0005;display:flex;align-items:center;justify-content:center;gap:2px;font-size:21px}.lang-globe{font-size:15px}.lang-options{display:none;position:absolute;bottom:75px;right:0;background:white;border-radius:13px;padding:8px;min-width:170px;box-shadow:0 15px 50px #0003}.lang-options.open{display:block}.lang-options button{display:block;width:100%;background:none;border:0;text-align:left;padding:11px 12px;border-radius:7px;color:#1e2b21;font-size:13px}.lang-options button:hover,.lang-options button.active{background:#eae8df}@media(max-width:850px){.header{padding:20px 6%}.header nav{display:none;position:absolute;top:80px;left:0;right:0;background:#192019;padding:22px;flex-direction:column}.header nav.show{display:flex}.navcta{display:none}.hamburger{display:block}.hero{min-height:690px;padding:140px 8% 70px}.brand,.madeira{grid-template-columns:1fr}.brand-photo{min-height:430px}.brand-copy{min-height:540px;padding:70px 8%}.brand-nolita .brand-copy{order:2}.brand-nolita .brand-photo{order:1}.madeira-image{min-height:400px}.madeira-copy{padding:75px 8%}.closing-grid{gap:45px;flex-wrap:wrap}footer{flex-direction:column;text-align:center}.hero-bottom{left:8%;right:8%}}@media(max-width:480px){.hero h1{font-size:56px}.hero-bottom{font-size:8px}.brand h2{font-size:65px}.closing-grid{display:block;text-align:center}.closing-grid>div{margin:35px 0}.language{right:14px;bottom:14px}}

/* Expansion and enquiry form */
.partners{background:#f1eee5;color:#202720;padding:clamp(70px,9vw,130px) 7%;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.partners h2{font-family:'Playfair Display',serif;font-size:clamp(36px,4.4vw,68px);line-height:1.1;margin:25px 0}.partners h2 em{color:#a36346}.partners-intro p{font-size:17px;line-height:1.85;max-width:580px}.partner-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:35px}.partner-chips span{border:1px solid #c8c6bd;border-radius:40px;padding:9px 14px;font-size:12px}.partner-form{background:white;padding:clamp(22px,3.5vw,50px);box-shadow:0 16px 55px #00000010;display:grid;gap:18px}.partner-form label:not(.consent){display:grid;gap:8px;font-size:13px;font-weight:600}.partner-form input:not([type=checkbox]),.partner-form select,.partner-form textarea{width:100%;border:1px solid #c7c8c0;background:#faf9f6;padding:14px;font:inherit;font-size:15px;color:#1e2621;border-radius:3px}.partner-form input:focus,.partner-form textarea:focus,.partner-form select:focus{outline:2px solid #6b866d;outline-offset:1px}.partner-form .consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.6}.partner-form .consent input{margin-top:4px}.partner-form button{cursor:pointer;border:0}.form-note{font-size:11px;line-height:1.6;color:#6d756c;margin:0}.hidden-field{position:absolute;left:-9999px}.real-gallery{margin-top:25px;border-top:1px solid #ffffff30;padding-top:18px}.real-gallery h4{font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.real-gallery-links{display:flex;flex-wrap:wrap;gap:8px}.real-gallery-links a{font-size:12px;padding:9px 12px;border:1px solid currentColor;border-radius:30px;color:inherit;text-decoration:none;opacity:.9}.real-gallery-links a:hover{opacity:1;text-decoration:underline}@media(max-width:850px){.partners{grid-template-columns:1fr;gap:32px}.partner-form{padding:24px}}

/* Official restaurant brand assets — original artwork retained */
.brand h2:has(.brand-logo){margin:12px 0 18px;line-height:1}
.brand-logo{display:block;width:min(100%,340px);height:auto;max-height:185px;object-fit:contain;object-position:left center;border-radius:2px}
.allora-logo{background:#f8f8f8;padding:12px}
.nolita-logo{width:min(100%,350px);background:#000}
.wordmark-with-logos{display:flex;align-items:center;gap:11px;position:relative;padding-bottom:15px}
.wordmark-with-logos img{height:44px;width:76px;object-fit:contain;background:#f7f5f0;border-radius:2px;padding:3px}
.wordmark-with-logos img:nth-child(2){background:#000}
.wordmark-with-logos span{font-family:'Playfair Display',serif;font-size:18px}
.wordmark-with-logos small{position:absolute;bottom:0;left:0;white-space:nowrap;font-size:7px;letter-spacing:.23em}
.footer-logo{display:flex;align-items:center;gap:12px}
.footer-logo img{width:95px;height:60px;object-fit:contain;background:#f8f8f8;padding:4px}
.footer-logo img:nth-child(2){background:#000}
@media(max-width:480px){.wordmark-with-logos img{width:61px;height:38px}.wordmark-with-logos{gap:7px}.footer-logo img{width:80px;height:50px}}

/* V4: dark circular logo medallions, high-contrast originals */
.wordmark{white-space:nowrap}.wordmark small{white-space:normal}
.brand h2:has(.brand-logo){margin:15px 0 24px}
.logo-medallion{width:clamp(220px,25vw,320px);height:clamp(220px,25vw,320px);border-radius:50%;background:#101010;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:26px;border:3px solid #e0a95e;box-shadow:0 18px 46px #0005, inset 0 0 0 6px #ffffff0d}
.logo-medallion img.brand-logo,.logo-medallion img{width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;border-radius:0;background:transparent;padding:0;filter:contrast(1.13) saturate(1.08)}
.allora-medallion img{background:#f6f5f1!important;padding:12px!important;border-radius:50%!important;object-fit:contain!important}
.nolita-medallion img{background:#000!important;object-fit:contain!important}
.footer-logo{display:flex;align-items:center;gap:16px}.footer-medallion{width:100px;height:100px;padding:9px;border-width:2px;box-shadow:none}.footer-medallion img{width:100%;height:100%;padding:4px!important}
.reservation-btn{background:#e99b42;color:#141414!important;border-radius:3px}.reservation-btn:hover{background:#ffb966}.phone-link{font-weight:700;color:#8d5228}.brand-allora .reservation-btn{background:#f2b66a}
.lang-options{max-height:min(70vh,440px);overflow-y:auto}.lang-options button{white-space:nowrap}
@media(max-width:480px){.logo-medallion{width:230px;height:230px}.footer-medallion{width:85px;height:85px}.wordmark{font-size:19px}}

/* Final responsive and accessibility refinements */
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{overflow-x:hidden}img{max-width:100%}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e99b42;outline-offset:4px}.header{z-index:60}.header nav{z-index:65}.hamburger{cursor:pointer;min-width:44px;min-height:44px}.brand-copy,.partners-intro,.partner-form{min-width:0}.brand-copy .actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.brand-copy .actions .btn{max-width:100%;white-space:normal;text-align:center}.logo-medallion{flex:none}.partner-form input,.partner-form select,.partner-form textarea{min-width:0;max-width:100%}.lang-toggle{cursor:pointer}.lang-options{z-index:80}.lang-options button{cursor:pointer;min-height:44px}.navcta{white-space:nowrap}.brand-photo{background-position:center}.madeira-image{background-position:center}.footer-logo{flex-wrap:wrap;justify-content:center}.footer-medallion{flex-shrink:0}@media(max-width:850px){.header nav.show{display:flex;box-shadow:0 18px 35px #0008}.header nav a{display:block;padding:10px 6px;min-height:44px}.header{gap:12px}.hero{min-height:650px}.brand-copy{min-height:unset}.partners{padding:65px 6%}.partner-form{width:100%}.madeira-image{min-height:320px}}@media(max-width:480px){.header{padding:14px 5%}.wordmark{font-size:clamp(16px,5vw,20px)}.wordmark small{font-size:8px}.hero{min-height:610px;padding:135px 6% 82px}.hero h1{font-size:clamp(43px,12vw,58px);overflow-wrap:break-word}.hero p{max-width:100%}.hero-bottom{gap:8px;flex-wrap:wrap}.brand-photo{min-height:320px}.brand-copy{padding:52px 6%}.brand-copy h3{overflow-wrap:break-word}.brand-copy .actions{align-items:stretch}.brand-copy .actions .btn{width:100%}.logo-medallion{width:min(230px,75vw);height:min(230px,75vw)}.intro,.statement,.closing{padding-left:6%;padding-right:6%}.partners h2{font-size:clamp(33px,9vw,48px)}.partner-form{padding:20px}.canada{padding:78px 6%}.canada h2{font-size:clamp(37px,10vw,54px)}.closing h2{font-size:clamp(37px,10vw,58px)}.lang-toggle{width:58px;height:58px}.lang-options{max-height:min(65vh,420px);right:0}.footer-medallion{width:74px;height:74px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* V7: actionable brand medallions and official social profiles */
.logo-click-target{display:inline-flex;max-width:100%;border-radius:50%;align-self:flex-start;cursor:pointer;transition:transform .2s ease,filter .2s ease}
.logo-click-target:hover{transform:translateY(-4px);filter:brightness(1.08)}
.logo-click-target:focus-visible{outline:3px solid #e99b42;outline-offset:6px}
.instagram-link{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:9px 12px;border:1px solid currentColor;border-radius:3px;font-size:12px;font-weight:700;letter-spacing:.04em;transition:background .2s ease}
.instagram-link:hover{background:#ffffff20}
.instagram-link svg,.instagram-contact svg{width:21px;height:21px;flex:none}
.instagram-contact{display:inline-flex!important;align-items:center;gap:8px;min-height:44px}
.footer-logo-link{flex-shrink:0}.footer-logo-link .footer-medallion{margin:0}
@media(max-width:480px){.brand-copy .actions .instagram-link{justify-content:center;width:100%}}
@media(prefers-reduced-motion:reduce){.logo-click-target{transition:none}}
