/* Shared DIVA service-page system. One component vocabulary, with no theme overrides. */
:root{--dv-bg:#0b0b09;--dv-panel:#141411;--dv-raised:#1c1c17;--dv-paper:#f4efe5;--dv-muted:#b7b3a6;--dv-gold:#e4b65e;--dv-line:#363328;--dv-font:'Anuphan',system-ui,sans-serif;--dv-serif:'Noto Serif Thai',serif;--dv-width:1200px}
html{scroll-padding-top:100px;-webkit-text-size-adjust:100%}.dv-page{margin:0;background:var(--dv-bg);color:var(--dv-paper);font:400 16px/1.75 var(--dv-font);padding-bottom:0}.dv-page *,.dv-header *,.dv-footer *,.dv-dock *{box-sizing:border-box}.dv-page a{text-decoration:none;color:inherit}.dv-page h1,.dv-page h2,.dv-page h3{color:var(--dv-paper);margin:0;font-weight:600}.dv-page p{margin:0 0 1rem}.dv-page figure{margin:0}.dv-page img{max-width:100%;display:block}.dv-page button,.dv-page input,.dv-page textarea,.dv-page select{font:inherit}.dv-page button{cursor:pointer}.dv-page [hidden],[data-v12] [hidden],.dv-mobile-menu[hidden]{display:none!important}.dv-page em{font-style:normal;color:var(--dv-gold)}.dv-page h1{font:600 clamp(30px,4.5vw,56px)/1.45 var(--dv-serif);letter-spacing:-.02em}.dv-page h2{font:600 clamp(25px,3vw,40px)/1.5 var(--dv-serif)}.dv-page h3{font:600 21px/1.5 var(--dv-font)}.dv-page :focus-visible,.dv-header :focus-visible,.dv-footer :focus-visible,.dv-dock :focus-visible{outline:3px solid var(--dv-gold);outline-offset:5px}.dv-wrap{width:min(var(--dv-width),calc(100% - 64px));margin-inline:auto}.dv-section{padding-block:72px}.dv-section-head{max-width:760px;margin-bottom:30px}.dv-section-head h2{margin:8px 0 12px}.dv-section-head>p:last-child:not(.dv-kicker){color:var(--dv-muted)}.dv-kicker{font:600 11px/1.6 var(--dv-font)!important;color:var(--dv-gold)!important;letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px!important}.dv-lead{max-width:700px;font-size:18px;line-height:1.8;color:var(--dv-muted)}.dv-note{font-size:14px!important;color:var(--dv-muted)!important;line-height:1.7;margin-top:14px!important}.dv-page-head{padding-top:56px;padding-bottom:32px}.dv-page-head h1{max-width:900px;margin-bottom:16px}.dv-page-head .dv-lead{margin-bottom:0}.dv-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.dv-button{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:11px 22px;border:1px solid transparent;border-radius:8px;font:600 15px/1.6 var(--dv-font);text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,color .2s;white-space:normal;text-align:center}.dv-button svg{flex:none}.dv-button-gold{background:var(--dv-gold);color:#17130b!important}.dv-button-gold:hover{background:#f3ce88}.dv-button-outline{border-color:#69604c;background:transparent;color:var(--dv-paper)!important}.dv-button-outline:hover{background:#242118;border-color:var(--dv-gold)}.dv-button-line{background:#156c3c;color:#fff!important}.dv-button:disabled{opacity:.45;cursor:not-allowed}.dv-skip{position:absolute;left:-9999px;top:8px;background:var(--dv-gold);color:#111!important;padding:12px;z-index:200}.dv-skip:focus{left:12px}
/* Header, footer and actions: same markup on the home, service and journal pages. */
.dv-header{position:sticky!important;top:0;z-index:1000;background:#0b0b09f5!important;color:var(--dv-paper);border-bottom:1px solid var(--dv-line);width:100%;font-family:var(--dv-font);backdrop-filter:blur(12px)}.dv-header-inner{width:min(1400px,calc(100% - 64px));margin:auto;min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.dv-header a,.dv-footer a,.dv-dock a{color:inherit;text-decoration:none}.dv-brand{display:inline-flex!important;flex-direction:column!important;gap:2px;flex:none;width:auto!important;line-height:1!important;color:var(--dv-paper)!important;white-space:nowrap}.dv-brand>span{font:500 38px/1 'Anuphan',sans-serif;letter-spacing:-2px;white-space:nowrap}.dv-brand>small{font:500 7px/1.8 var(--dv-font);letter-spacing:.16em;color:#d3c4a4}.dv-desktop-nav{display:flex!important;align-items:center;gap:22px}.dv-desktop-nav>a{font-size:14px;white-space:nowrap;min-height:44px;display:flex;align-items:center}.dv-desktop-nav>a:hover,.dv-desktop-nav>a[aria-current]{color:var(--dv-gold);text-decoration:underline;text-underline-offset:8px}.dv-header-actions{display:flex;align-items:center;gap:16px}.dv-language{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:13px}.dv-header-book{min-height:44px;font-size:14px;padding:9px 16px}.dv-menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;color:var(--dv-paper);border:1px solid var(--dv-line);background:none;border-radius:7px;cursor:pointer}.dv-mobile-menu{padding:16px 24px 24px;background:var(--dv-bg);border-top:1px solid var(--dv-line);display:grid;max-height:calc(100dvh - 76px);overflow-y:auto}.dv-mobile-menu>a:not(.dv-button){padding:13px 4px;min-height:48px;border-bottom:1px solid var(--dv-line);font-size:17px}.dv-mobile-menu .dv-button{margin-top:16px}.dv-footer{padding:64px 0 28px!important;background:#10100d;color:var(--dv-muted)!important;border-top:1px solid var(--dv-line);font:400 15px/1.8 var(--dv-font);display:block!important}.dv-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:64px}.dv-footer .dv-brand{margin-bottom:20px}.dv-footer p{margin:0 0 14px}.dv-footer nav{display:flex!important;flex-direction:column;gap:8px}.dv-footer nav h2{font:600 16px/1.6 var(--dv-font)!important;color:var(--dv-paper);margin:0 0 12px!important}.dv-footer nav a{font:400 15px/1.8 var(--dv-font);display:flex;gap:8px;align-items:center;padding:3px 0}.dv-footer a:hover{color:var(--dv-gold)}.dv-footer-base{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--dv-line);margin-top:48px;padding-top:22px;font-size:13px}.dv-dock{display:none;position:fixed;z-index:1050;bottom:0;left:0;right:0;border-top:1px solid var(--dv-line);background:#10100df5;backdrop-filter:blur(12px);padding:9px 16px max(9px,env(safe-area-inset-bottom));gap:6px;font:500 13px/1.5 var(--dv-font)}.dv-dock>a{min-height:46px;display:flex;align-items:center;justify-content:center;gap:7px;flex:1;color:#eae4d6}.dv-dock .dv-dock-line{background:#167341;border-radius:6px;color:#fff;flex:1.4}
/* Venue, rooms and offers. */
.dv-room-feature{display:grid;grid-template-columns:.86fr 1.14fr;gap:24px;align-items:stretch}.dv-rate-panel{padding:36px;border:1px solid var(--dv-line);border-radius:12px;background:var(--dv-panel)}.dv-rate{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin:12px 0 22px}.dv-rate strong{font:500 clamp(44px,5vw,64px)/1.1 var(--dv-font);color:var(--dv-gold);letter-spacing:-.05em}.dv-rate span{color:var(--dv-muted);font-size:15px}.dv-pack{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--dv-line);border-bottom:1px solid var(--dv-line);padding:16px 0;margin-bottom:20px}.dv-pack strong{font-size:27px}.dv-rate-panel>p:not(.dv-kicker){color:var(--dv-muted)}.dv-venue-photo{display:flex;flex-direction:column;overflow:hidden;border-radius:12px;background:#171710}.dv-venue-photo img{width:100%;height:100%;min-height:300px;max-height:430px;object-fit:cover;flex:1}.dv-page figcaption{font-size:13px;color:var(--dv-muted);padding:10px 0}.dv-venue-photo figcaption{padding:12px 16px}.dv-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.dv-space-card{border:1px solid var(--dv-line);padding:28px;border-radius:10px;background:var(--dv-panel)}.dv-space-card h3{margin:12px 0}.dv-space-card>strong{display:block;color:var(--dv-gold);font-size:26px;margin:12px 0}.dv-space-card p{color:var(--dv-muted)}.dv-space-card>a{display:inline-flex;align-items:center;gap:6px;color:var(--dv-gold);font-weight:500;padding:8px 0}.dv-card-number{font-size:13px;color:var(--dv-gold);letter-spacing:.1em}.dv-calculator{background:var(--dv-panel);padding:40px;border-radius:12px;margin-bottom:20px}.dv-calc-controls{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:22px;align-items:end}.dv-calc-result{display:flex;flex-direction:column;gap:10px}.dv-calc-result strong{font-size:24px;color:var(--dv-gold)}.dv-page input,.dv-page select,.dv-page textarea{width:100%;display:block;min-height:48px;padding:11px 13px;border:1px solid #5a5649;border-radius:7px;background:#10100d;color:var(--dv-paper);margin-top:7px;color-scheme:dark}.dv-page label{display:block;font-size:15px;color:#e7dfd0}.dv-faq{border-top:1px solid var(--dv-line)}.dv-faq details{border-bottom:1px solid var(--dv-line)}.dv-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:20px 0;font-weight:500;list-style:none}.dv-faq summary::-webkit-details-marker{display:none}.dv-faq summary svg{flex:none}.dv-faq details[open] summary svg{transform:rotate(45deg)}.dv-faq details p{max-width:850px;color:var(--dv-muted);padding:0 40px 20px 0}.dv-final-cta{margin-bottom:72px;padding:44px;border:1px solid #6a5532;border-radius:12px;background:radial-gradient(at 100% 0,#43321b50,transparent 65%),var(--dv-panel);display:flex;align-items:center;justify-content:space-between;gap:32px}.dv-final-cta h2{margin:10px 0 14px}.dv-final-cta p{max-width:620px;color:var(--dv-muted)}.dv-final-cta>.dv-button{flex:none}.dv-outdoor-panorama img{width:100%;max-height:500px;object-fit:cover;border-radius:12px}.dv-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.dv-photo-pair img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.dv-party-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px}.dv-party-layout>figure img{width:100%;height:calc(100% - 45px);min-height:320px;object-fit:cover;border-radius:12px}.dv-steps{padding-left:22px;margin:24px 0}.dv-steps li{padding-left:8px;margin-bottom:20px}.dv-steps b,.dv-steps span{display:block}.dv-steps span{color:var(--dv-muted);font-size:15px;margin-top:5px}.dv-offers-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.dv-offers-grid .dv-rate-panel{padding:40px}.dv-featured-offer{border-color:#a38245;background:linear-gradient(145deg,#2a2317,#141411)}.dv-conditions li{margin-bottom:14px;color:var(--dv-muted)}.dv-conditions ul{padding-left:24px}
/* Food has one gallery, one list and a readable full-menu viewer. */
.dv-food-showcase{padding:32px 0;background:radial-gradient(ellipse at center,#34261750,transparent 70%);overflow:hidden;border-block:1px solid #29271e}.dv-orbit-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.dv-orbit-heading h2{font-size:clamp(25px,3vw,36px)}.dv-orbit-heading .dv-button{font-size:13px;min-height:44px}.dv-orbit-stage{height:350px;display:flex;align-items:center;justify-content:center;perspective:1100px;overflow:hidden;touch-action:pan-y}.dv-orbit-ring{position:relative;width:200px;height:220px;transform-style:preserve-3d;animation:dv-orbit-left 44s linear infinite}.dv-orbit-card{position:absolute;inset:0;border:1px solid #8c6d3b;border-radius:12px;overflow:hidden;backface-visibility:hidden;background:#17150e;transform:rotateY(calc(var(--i)*45deg)) translateZ(310px);box-shadow:0 14px 32px #0007}.dv-orbit-card img{width:100%;height:100%;object-fit:cover}.dv-orbit-paused .dv-orbit-ring,.dv-orbit-stage:hover .dv-orbit-ring,.dv-orbit-stage:focus-within .dv-orbit-ring{animation-play-state:paused}.dv-orbit-stage:focus-within{outline:1px solid var(--dv-gold)}@keyframes dv-orbit-left{to{transform:rotateY(-360deg)}}.dv-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.dv-filter button{background:var(--dv-panel);color:var(--dv-muted);border:1px solid var(--dv-line);padding:10px 20px;min-height:44px;border-radius:24px}.dv-filter button[aria-pressed=true]{color:#17130b;background:var(--dv-gold);border-color:var(--dv-gold)}.dv-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.dv-dish{overflow:hidden;border:1px solid var(--dv-line);border-radius:12px;background:var(--dv-panel);display:flex;flex-direction:column}.dv-dish>a{display:block;aspect-ratio:4/3;overflow:hidden;background:#1c1a12;cursor:zoom-in}.dv-dish>a img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.dv-dish>a:hover img{transform:scale(1.035)}.dv-dish-body{padding:22px;display:flex;flex-direction:column;flex:1}.dv-dish-en{font-size:12px;color:var(--dv-muted);margin:0 0 7px!important}.dv-dish-body>p:not(.dv-dish-en){font-size:14px;color:var(--dv-muted);margin-top:10px}.dv-dish-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px}.dv-dish-bottom strong{font-size:22px;color:var(--dv-gold)}.dv-dish-bottom button{border:1px solid #65573c;border-radius:6px;padding:8px 12px;background:transparent;color:var(--dv-paper);display:flex;gap:5px;align-items:center;min-height:44px}.dv-order{margin-top:32px;padding:28px;background:#1d1c16;border:1px solid #665535;border-radius:10px;display:grid;grid-template-columns:1fr .8fr;gap:32px}.dv-order h3{margin:0 0 12px}.dv-order ul{padding:0;list-style:none;margin:0}.dv-order li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--dv-line)}.dv-order li button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;background:#302b20;border:1px solid #55472e;border-radius:5px;color:var(--dv-paper);font-size:18px}.dv-order li span{padding-inline:10px}.dv-order-total{color:var(--dv-gold);font-weight:600;margin-top:16px!important}.dv-order textarea{font-size:14px;margin:16px 0}.dv-menu-boards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.dv-menu-boards figure{overflow:hidden;border:1px solid #6b582d;border-radius:10px;background:#15130c}.dv-menu-boards a{display:block;cursor:zoom-in}.dv-menu-boards img{width:100%;height:auto;aspect-ratio:1.414;object-fit:contain}.dv-menu-boards a>span{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;font-weight:500}.dv-photo-dialog{max-width:none;max-height:none;width:100%;height:100dvh;padding:0;border:0;margin:0;background:#080806;color:var(--dv-paper);overflow:hidden;z-index:3000}.dv-photo-dialog::backdrop{background:#000e}.dv-photo-toolbar{height:auto;min-height:66px;padding:10px 18px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--dv-line)}.dv-photo-toolbar strong{margin-right:auto;font-size:15px}.dv-photo-toolbar button,.dv-photo-toolbar a{min-height:44px;min-width:44px;background:#27251d;color:var(--dv-paper);border:1px solid #615438;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;padding:6px 12px;font:500 14px var(--dv-font);cursor:pointer}.dv-photo-canvas{height:calc(100dvh - 90px);overflow:auto;touch-action:pan-x pan-y pinch-zoom;overscroll-behavior:contain;display:block;padding:20px}.dv-photo-canvas img{width:var(--photo-width,100%);max-width:none!important;height:auto!important;display:block;margin:auto}.dv-photo-help{font-size:12px;color:var(--dv-muted);margin:0!important}
/* Booking is a transparent handoff to the venue. */
.dv-booking-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:start}.dv-booking-form{padding:32px;border-radius:12px;border:1px solid var(--dv-line);background:var(--dv-panel);scroll-margin-top:100px}.dv-booking-form h2{margin-bottom:24px}.dv-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.dv-booking-form form>.dv-button{width:100%;margin-top:22px}.dv-booking-form textarea{resize:vertical}.dv-contact-card{padding:32px;border:1px solid var(--dv-line);border-radius:12px}.dv-contact-card h2{margin-bottom:18px}.dv-contact-link{padding:16px 0;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--dv-line)}.dv-contact-link>span{flex:1;font-size:14px;color:var(--dv-muted)}.dv-contact-link strong{display:block;font-size:23px;font-weight:500;color:var(--dv-paper)}.dv-contact-card>p:not(.dv-kicker){margin-top:22px}.dv-line-qr{border-radius:8px;margin-top:22px;max-width:170px}.dv-booking-message{border-top:1px solid var(--dv-line);margin-top:24px;padding-top:24px}.dv-booking-message textarea{font-size:14px}.dv-booking-message [role=status]{font-size:14px;color:var(--dv-muted);margin-top:16px}.dv-location-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.dv-location-grid figure img{width:100%;height:390px;object-fit:cover;border-radius:10px}.dv-location-grid h3{margin-bottom:12px}.dv-location-grid p{color:var(--dv-muted)}.dv-map{width:100%;height:230px;border:1px solid var(--dv-line);border-radius:10px;margin-top:24px}.dv-english-visit>p{max-width:800px;color:var(--dv-muted)}
/* Shared shell adapts the retained homepage and journal without theme collisions. */
body.dv-has-chrome{padding-bottom:0}.dv-header ~ main{isolation:isolate}.dv-page .dv-footer h2{font-family:var(--dv-font)}.dv-header nav a::before,.dv-header nav a::after,.dv-footer nav a::before,.dv-footer nav a::after{content:none!important}.dv-header nav{position:static;inset:auto;transform:none;opacity:1;visibility:visible}.dv-header .dv-mobile-menu{position:static}.dv-footer .dv-brand>span{display:inline}.dv-has-chrome .floating-cta,.dv-has-chrome .mobile-quick-nav,.dv-has-chrome .diva-floating-dock{display:none!important}
@media(min-width:1051px){.dv-mobile-menu{display:none!important}}
@media(max-width:1190px){.dv-desktop-nav{gap:14px}.dv-desktop-nav>a{font-size:13px}.dv-header-inner{gap:16px;width:calc(100% - 40px)}}
@media(max-width:1050px){
  .dv-desktop-nav{display:none!important}
  .dv-menu-toggle{display:flex}
  .dv-header-inner{min-height:64px}
  .dv-header-book{display:none!important}
  .dv-header-actions{gap:8px}
}
@media(max-width:800px){
  html,body{overflow-x:hidden!important;max-width:100vw!important}
  *,*::before,*::after{box-sizing:border-box}
  img,video,iframe{max-width:100%}
  .dv-wrap{width:calc(100% - 28px)!important;margin-inline:auto!important}
  .dv-page,.dv-has-chrome,body{padding-bottom:calc(76px + env(safe-area-inset-bottom))!important}
  .dv-header{backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important}
  .dv-header-inner{min-height:60px!important;width:calc(100% - 28px)!important;padding:0!important}
  .dv-brand>span{font-size:27px!important;letter-spacing:-1px!important}
  .dv-brand>small{font-size:6.5px!important;letter-spacing:.12em!important}
  .dv-menu-toggle{width:42px!important;height:42px!important}
  .dv-language{min-width:38px!important;min-height:38px!important;font-size:13px!important;font-weight:600!important}
  .dv-mobile-menu{padding:12px 18px 24px!important;max-height:calc(100dvh - 60px)!important;background:#11100dfc!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;border-top:1px solid var(--dv-line)!important;border-bottom:1px solid var(--dv-line)!important}
  .dv-mobile-menu>a:not(.dv-button){padding:13px 4px!important;font-size:16px!important;min-height:48px!important;border-bottom:1px solid rgba(255,255,255,0.06)!important}
  .dv-mobile-menu .dv-button{margin-top:18px!important;min-height:48px!important;width:100%!important}
  
  .dv-page-head{padding-top:22px!important;padding-bottom:18px!important}
  .dv-page-head h1{font-size:clamp(25px,6.8vw,34px)!important;line-height:1.32!important}
  .dv-lead{font-size:15px!important;line-height:1.65!important}
  .dv-page h2{font-size:clamp(22px,5.5vw,28px)!important;line-height:1.35!important}
  .dv-section{padding-block:36px!important}
  .dv-section-head{margin-bottom:18px!important}
  .dv-section-head h2{margin:4px 0 8px!important}
  
  .dv-actions{flex-direction:column!important;width:100%!important;gap:10px!important}
  .dv-actions>.dv-button{width:100%!important;min-height:48px!important;justify-content:center!important;font-size:15px!important}
  
  .dv-room-feature,.dv-party-layout,.dv-booking-layout,.dv-location-grid{grid-template-columns:1fr!important;gap:16px!important}
  .dv-room-feature .dv-rate-panel{padding:20px 16px!important;border-radius:12px!important}
  .dv-rate{margin:8px 0 16px!important}
  .dv-rate strong{font-size:40px!important}
  .dv-pack{padding:12px 0!important;margin-bottom:16px!important}
  .dv-pack strong{font-size:24px!important}
  .dv-venue-photo{border-radius:10px!important;overflow:hidden!important}
  .dv-venue-photo img{min-height:190px!important;max-height:250px!important;object-fit:cover!important;border-radius:10px!important}
  
  .dv-three-grid{grid-template-columns:1fr!important;gap:14px!important}
  .dv-space-card{padding:18px!important;border-radius:10px!important}
  .dv-space-card h3{font-size:19px!important;margin:8px 0!important}
  .dv-space-card>strong{font-size:22px!important;margin:8px 0!important}
  
  .dv-calculator{padding:20px 16px!important;border-radius:12px!important}
  .dv-calc-controls{grid-template-columns:1fr!important;gap:14px!important}
  .dv-calc-result{grid-column:1/-1!important;padding-block:12px!important}
  .dv-calc-result strong{font-size:38px!important}
  
  .dv-final-cta{padding:22px 16px!important;display:block!important;border-radius:12px!important;margin-bottom:28px!important}
  .dv-final-cta h2{font-size:22px!important;line-height:1.35!important}
  .dv-final-cta p{font-size:14px!important;margin-top:6px!important}
  .dv-final-cta>.dv-button{margin-top:16px!important;width:100%!important;min-height:48px!important}
  
  .dv-footer{padding:32px 0 20px!important}
  .dv-footer-grid{grid-template-columns:1fr!important;gap:24px!important}
  .dv-footer-grid>div:first-child{grid-column:1/-1}
  .dv-footer-base{margin-top:22px!important;padding-top:16px!important;flex-direction:column!important;gap:6px!important}
  
  .dv-dock{display:grid!important;grid-template-columns:1.4fr 1fr 1fr!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;z-index:1050!important;background:rgba(16,16,13,0.96)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;border-top:1px solid var(--dv-line)!important;padding:7px 10px max(8px,env(safe-area-inset-bottom))!important;gap:6px!important;box-shadow:0 -4px 20px rgba(0,0,0,0.5)!important}
  .dv-dock>a{min-height:46px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;border-radius:8px!important;font-size:13.5px!important;font-weight:500!important;color:var(--dv-paper)!important;background:#1e1d18!important;text-decoration:none!important}
  .dv-dock .dv-dock-line{background:#167341!important;color:#fff!important;font-weight:600!important}
  body.dv-menu-open .dv-dock{display:none!important}
  
  .dv-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .dv-dish{border-radius:10px!important;overflow:hidden!important}
  .dv-dish-body{padding:12px!important}
  .dv-dish h3{font-size:15.5px!important}
  .dv-dish-bottom{flex-wrap:wrap!important}
  .dv-dish-bottom strong{font-size:17px!important}
  .dv-dish-bottom button{width:100%!important;min-height:38px!important;justify-content:center!important;margin-top:6px!important}
  .dv-order{grid-template-columns:1fr!important;padding:18px 14px!important;border-radius:12px!important;gap:14px!important}
  .dv-order button[data-order-copy]{width:100%!important;min-height:48px!important;font-size:15px!important}
  .dv-menu-boards{grid-template-columns:1fr!important;gap:16px!important}
  
  .dv-orbit-stage{height:230px!important;perspective:600px!important;overflow:hidden!important;max-width:100%!important}
  .dv-orbit-ring{width:120px!important;height:145px!important}
  .dv-orbit-card{transform:rotateY(calc(var(--i)*45deg)) translateZ(165px)!important}
  .dv-orbit-heading{flex-direction:column!important;align-items:flex-start!important;gap:10px!important;margin-bottom:16px!important}
  .dv-orbit-heading h2{font-size:22px!important}
  .dv-orbit-heading .dv-button{width:100%!important;min-height:42px!important;max-width:none!important}
  .dv-food-showcase{padding-block:22px 10px!important}
  
  .dv-booking-form,.dv-contact-card{padding:20px 16px!important;border-radius:12px!important}
  .dv-form-grid{grid-template-columns:1fr!important;gap:12px!important}
  .dv-booking-form input,.dv-booking-form select,.dv-booking-form textarea{font-size:16px!important;min-height:46px!important;border-radius:8px!important;padding:10px 12px!important}
  .dv-booking-form button[type="submit"]{width:100%!important;min-height:48px!important;font-size:15px!important;margin-top:16px!important}
  .dv-contact-link{padding:12px 0!important}
  .dv-contact-link strong{font-size:19px!important}
  .dv-line-qr{max-width:140px!important;height:auto!important;margin-top:14px!important}
  .dv-location-grid figure img{height:210px!important;border-radius:10px!important;object-fit:cover!important}
  .dv-map{height:230px!important;border-radius:10px!important}
  .dv-photo-pair{gap:12px!important}
  .dv-offers-grid{grid-template-columns:1fr!important;gap:16px!important}
  .dv-offers-grid .dv-rate-panel{padding:20px 16px!important;border-radius:12px!important}
  
  .dv-photo-toolbar{padding:8px!important;gap:6px!important}
  .dv-photo-toolbar strong{flex-basis:100%!important;font-size:13.5px!important}
  .dv-photo-canvas{height:calc(100dvh - 120px)!important;padding:8px!important}
  .dv-photo-toolbar button,.dv-photo-toolbar a{font-size:12.5px!important;padding:6px 8px!important}

  .dv-faq details{border:1px solid var(--dv-line)!important;border-radius:8px!important;margin-bottom:10px!important;background:var(--dv-panel)!important;overflow:hidden!important}
  .dv-faq summary{padding:14px 16px!important;min-height:48px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;font-size:15px!important;font-weight:500!important;gap:12px!important}
  .dv-faq details p{padding:0 16px 14px!important;font-size:14.5px!important;line-height:1.65!important;color:var(--dv-muted)!important;margin:0!important}
}
@media(max-width:480px){
  .dv-menu-grid{grid-template-columns:1fr!important;gap:14px!important}
}
@media(max-width:380px){
  .dv-page-head h1{font-size:26px!important}
  .dv-wrap{width:calc(100% - 24px)!important}
  .dv-header-inner{width:calc(100% - 24px)!important}
  .dv-brand>span{font-size:25px!important}
}


@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.dv-orbit-ring{animation:none}.dv-page *{transition:none!important;scroll-behavior:auto!important}}
/* Keep long journal titles and category navigation readable on a phone. */
.dv-has-chrome .article-hero h1{font-size:clamp(30px,3.4vw,49px);line-height:1.45;letter-spacing:0;max-width:940px}
.dv-has-chrome .article-hero{padding-top:40px!important;padding-bottom:36px!important}
.dv-has-chrome .article-hero nav{display:flex;flex-wrap:wrap;gap:8px 14px;margin-bottom:24px}
.dv-has-chrome .article-hero nav a{font-size:13px;line-height:1.7}
.dv-orbit-heading .dv-button{white-space:nowrap;flex-shrink:0}
.dv-space-card h2{font-size:23px;line-height:1.5;margin-bottom:14px}
@media(max-width:800px){
  .dv-has-chrome .article-hero{padding:24px 16px 26px!important}
  .dv-has-chrome .article-hero h1{font-size:clamp(22px,5.8vw,28px)!important;line-height:1.4!important}
  .dv-has-chrome .article-hero>p{font-size:14.5px!important;line-height:1.65!important}
  .dv-has-chrome .article-hero nav{margin-bottom:14px!important;gap:6px 10px!important}
  .dv-orbit-heading{align-items:flex-start!important}
  .dv-orbit-heading .dv-button{width:100%!important;padding:8px 10px}
  .dv-orbit-heading h2{font-size:22px!important}
  article table,.article-content table{display:block!important;width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .journal-grid{grid-template-columns:1fr!important;gap:16px!important;padding:0 14px 40px!important}
  .journal-grid article{padding:18px!important;min-height:auto!important}
}
