/* A single mobile composition: an open mountain view, warm surfaces and quiet type. */
@media (max-width:700px), (max-width:950px) and (orientation:landscape) {
  :root { --mobile-gutter:22px; --mobile-header:76px; }
  html { scroll-padding-top:0; }
  body { -webkit-text-size-adjust:100%; }
  .wrap,.guest-reviews .reviews-wrap { width:calc(100% - var(--mobile-gutter) * 2); }
  section[id],footer[id] { scroll-margin-top:calc(var(--mobile-header) + env(safe-area-inset-top,0px) + 16px); }
  /* The safe area belongs inside the header, so no page content can show
     through a separate strip above its scrolled background on iPhone. */
  .safe-area-top { display:none; }
  .site-header,.site-header.scrolled { display:flex;top:0;height:calc(var(--mobile-header) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(var(--mobile-gutter),env(safe-area-inset-right,0px)) 0 max(var(--mobile-gutter),env(safe-area-inset-left,0px));gap:12px;box-shadow:none;backdrop-filter:none;transition:background-color .25s ease,border-color .25s ease; }
  .site-header { border-bottom-color:#fff5df30; }
  /* Extend the same surface into translucent in-app browser toolbars,
     including WebViews that report a zero top safe-area inset. This is paint
     only: it adds no layout space and never intercepts toolbar touches. */
  .site-header::before { content:'';position:absolute;left:0;right:0;bottom:calc(100% - 1px);height:max(160px,env(safe-area-inset-top,0px));background:inherit;pointer-events:none; }
  .site-header.scrolled,body.menu-open .site-header { background:#5a3824;border-bottom-color:#e0c29c38; }
  .brand { gap:10px;min-width:0;min-height:44px; }
  .brand svg { width:36px;height:35px;flex:none; }
  .brand>span { font:400 clamp(22px,6.35vw,30px)/1 var(--serif);letter-spacing:.02em; }
  .brand small { font:500 5.5px/1.3 Onest,Arial,sans-serif;letter-spacing:.155em;margin-top:7px; }
  .desktop-nav,.header-actions { display:none; }
  .menu-toggle { display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;width:46px;height:46px;min-width:46px;min-height:46px;padding:0;gap:7px;border:1px solid #f4e4ca55;border-radius:50%;background:#5a38240d;transition:background .2s,border-color .2s; }
  .menu-toggle span { display:block;flex:none;width:19px;height:1px;transition:transform .22s ease;transform-origin:center;background:#f4e4ca; }
  .menu-toggle[aria-expanded='true'] span:first-child { transform:translateY(4px) rotate(45deg); }
  .menu-toggle[aria-expanded='true'] span:last-child { transform:translateY(-4px) rotate(-45deg); }
  body.menu-open { overflow:hidden;touch-action:none; }
  body.menu-open .cookie-notice { visibility:hidden; }
  .mobile-menu { display:flex;position:fixed;flex-direction:column;z-index:29;top:calc(var(--mobile-header) + env(safe-area-inset-top,0px));left:0;right:0;max-height:calc(100svh - var(--mobile-header) - env(safe-area-inset-top,0px));padding:18px max(var(--mobile-gutter),env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(var(--mobile-gutter),env(safe-area-inset-left,0px));gap:0;background:#5a3824;color:#f4ead9;box-shadow:0 28px 38px #30201642;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;opacity:0;transform:translateY(-12px);transition:opacity .18s ease,transform .18s ease; }
  .mobile-menu[hidden] { display:none; }
  .mobile-menu[data-open='true'] { opacity:1;transform:translateY(0); }
  .mobile-menu a { display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:14px 0;font:400 28px/1.15 var(--serif);letter-spacing:0;border-bottom:1px solid #e0c29c38; }
  .mobile-menu a[href^='#']::after { content:'↗';font:400 22px/1 Onest,Arial,sans-serif;color:#e0c29c; }
  .mobile-menu a[href^='tel:'] { min-height:56px;margin-top:18px;padding:15px 18px;border:0;border-radius:4px;background:#e0c29c;color:#302016;font:600 17px/1.3 Onest,Arial,sans-serif; }
  .mobile-menu a[href^='tel:']::after { content:'';width:20px;height:20px;flex:none;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23302016' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16v3a2 2 0 0 1-2 2A18 18 0 0 1 3 5a2 2 0 0 1 2-2h3l2 5-2 2a14 14 0 0 0 6 6l2-2z'/%3E%3C/svg%3E"); }

  .hero { display:grid;grid-template-rows:minmax(145px,1fr) auto auto;height:var(--mobile-hero-height,100svh);min-height:740px;max-height:1000px;padding-top:var(--mobile-hero-padding-top,calc(var(--mobile-header) + env(safe-area-inset-top,0px))); }
  .hero-image { object-position:44% center;transform:none;animation:none;transition:none; }
  .hero-shade { background:linear-gradient(180deg,#21170f99 0%,#21170f25 16%,#2f20140a 28%,#34231630 39%,#302016b8 58%,#302016f5 82%,#302016 100%); }
  .hero .wrap { width:calc(100% - var(--mobile-gutter) * 2); }
  .hero-copy { position:relative;grid-row:2;top:auto;bottom:auto;left:auto;right:auto;transform:none;margin:0 auto;padding:24px 0 27px; }
  .hero .eyebrow { margin:0 0 16px;font-size:8px;line-height:1.5;letter-spacing:.19em;gap:10px;color:#f2e5ce; }
  .hero .eyebrow>span { width:24px; }
  .hero h1 { max-width:560px;font:400 clamp(42px,12.3vw,72px)/1.02 var(--serif);font-synthesis:none;letter-spacing:-.015em;overflow-wrap:normal; }
  .hero h1 em { display:block;margin-top:3px;max-width:none;color:#e0c29c; }
  .hero h1>br { display:none; }
  .hero-last-word { display:block; }
  .hero-description { display:flex;align-items:center;gap:15px;max-width:390px;padding:0;margin:22px 0 24px;border:0; }
  .hero-description-number { display:block;flex:none;font:400 48px/.9 var(--serif);letter-spacing:-.04em;color:#e0c29c; }
  .hero-description-number:after,.hero-description-view:before { content:none; }
  .hero-description-copy { display:block;font:400 12px/1.65 Onest,Arial,sans-serif;letter-spacing:0;color:#f0e4d1; }
  .hero-description-view { display:inline;font:inherit;color:inherit; }
  .hero-description-view::before { content:' '; }
  .hero-description-view strong { font-weight:500;color:#fff7e9;border:0;padding:0; }
  .hero-cta { display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;max-width:390px;min-height:58px;padding:8px 9px 8px 21px;border:1px solid #efd9b6;background:#e7cba3;border-radius:5px;color:#302016;font:600 14px/1.3 Onest,Arial,sans-serif;box-shadow:0 8px 30px #24170d18; }
  .hero-cta span { width:40px;height:40px;border-radius:50%;background:#5a3824;color:#fff4df; }
  .hero-cta svg { width:20px;height:20px; }
  .hero-foot { position:relative;grid-row:3;bottom:auto;left:auto;right:auto;display:flex;gap:10px;margin:0 auto;padding:17px 0 var(--mobile-hero-padding-bottom,calc(22px + env(safe-area-inset-bottom,0px)));border-top:1px solid #e0c29c40; }
  .hero-facts { display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex:1;max-width:400px;font-size:9px;color:#d8c5ad; }
  .hero-facts>span { display:flex;align-items:baseline;gap:5px;white-space:nowrap; }
  .hero-facts b { font:400 22px/1.1 Onest,Arial,sans-serif;letter-spacing:-.06em;margin:0;color:#fff7e8; }
  .scroll-cue { width:44px;height:44px;flex:none;margin-left:8px;border-color:#e0c29c66;font-size:20px; }

  .address-section,.apartments-section,.guest-reviews { padding:54px 0; }
  .address-section { background:#eee2d0; }
  .address-section:before { opacity:.055;background-size:510px 330px; }
  .section-head,.reviews-heading { display:block;margin-bottom:27px; }
  .eyebrow.dark,.reviews-heading .eyebrow { margin-bottom:12px;font-size:8px;line-height:1.6;letter-spacing:.16em; }
  .section-head h2,.reviews-heading h2 { max-width:530px;font:400 clamp(35px,10.3vw,52px)/1.08 var(--serif);letter-spacing:-.01em;overflow-wrap:normal; }
  .section-head h2 em,.reviews-heading h2 em { display:block;font-style:normal;color:#92704d; }
  .section-head>p,.reviews-intro p { max-width:440px;margin-top:18px;padding:0;font-size:13px;line-height:1.75;color:#796a5c; }
  .address-grid { grid-template-columns:1fr;gap:20px; }
  .address-card { overflow:hidden;border:1px solid #d7c2a7;border-radius:8px;background:#faf6ef; }
  .address-card-top { min-height:44px;padding:11px 16px;font-size:8px;letter-spacing:.095em;gap:12px;line-height:1.5; }
  .address-card-top>span:first-child { max-width:70%; }
  .address-card-top>span:last-child { white-space:nowrap;font-size:8px; }
  .address-map { height:230px; }
  .address-card-bottom { min-height:0;display:block;padding:20px 18px 22px; }
  .address-card-bottom h3 { font:500 23px/1.25 Onest,Arial,sans-serif;letter-spacing:-.05em;margin-bottom:8px; }
  .address-card-bottom p { max-width:none;font-size:12px;line-height:1.65; }
  .address-map>a { display:flex;align-items:center;min-height:44px;bottom:12px;right:12px;padding:10px 14px;font-size:11px;border-radius:4px; }
  .map-privacy-cover { padding:20px;gap:10px; }
  .map-privacy-cover p { max-width:250px;font-size:11px;line-height:1.6; }
  .map-privacy-cover .privacy-button { min-height:44px;padding:11px 16px; }

  .apartment-groups { gap:46px; }
  .group-head { display:block;margin-bottom:22px;padding-top:24px;border-top:1px solid #ddcfbc; }
  .group-head h3 { font:400 clamp(29px,8.5vw,41px)/1.15 var(--serif);letter-spacing:0; }
  .group-meta { margin-top:10px;font-size:12px;line-height:1.65;color:#796a5c; }
  .group-meta:before { display:none; }
  .apartment-group[data-columns] .apartments-grid,.apartments-grid { grid-template-columns:1fr;gap:23px; }
  .apartment-card { border:1px solid #e0d0bc;border-radius:8px;background:#fffdf8;box-shadow:0 5px 20px #5a382405; }
  .apartment-card:hover { box-shadow:0 5px 20px #5a382405; }
  .card-visual { aspect-ratio:1.19; }
  .card-address { left:14px;top:14px;padding:7px 10px;border-radius:3px;font-size:9px;line-height:1.5;background:#fff8ecef; }
  .photo-expand { display:none; }
  .card-gallery-controls { display:flex;align-items:center;right:10px;bottom:10px;padding:2px 3px;gap:0;background:#362317df;border:1px solid #f5dfbd38;border-radius:26px;backdrop-filter:none; }
  .card-gallery-controls button { width:44px;height:44px;min-width:44px;min-height:44px;font-size:19px; }
  .card-counter { min-width:45px;font-size:10px;letter-spacing:.03em; }
  .apartment-info { min-height:0;padding:21px 19px 19px; }
  .card-location { font-size:8px;line-height:1.6;letter-spacing:.1em;color:#8d775f; }
  .apartment-info h3 { min-height:0;margin:8px 0 12px;font:500 25px/1.2 Onest,Arial,sans-serif;letter-spacing:-.055em; }
  .card-floor { min-height:30px;gap:6px;margin:0 0 13px;padding:5px 8px;border:0;border-radius:3px;background:#f0e5d5;font-size:10px; }
  .apartment-info p { min-height:0;margin:0 0 19px;font-size:13px;line-height:1.7;color:#796a5c; }
  .card-facts { display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 18px;font-size:11px;line-height:1.5;color:#755a40; }
  .card-facts span+span { padding-left:10px; }
  .card-bottom { display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding-top:17px; }
  .card-price { min-width:0;min-height:48px;font-size:11px; }
  .card-price strong { font-size:clamp(22px,6.1vw,27px);letter-spacing:-.05em; }
  .card-price small,.card-bottom small { font-size:10px; }
  .card-booking { gap:10px;min-height:48px;padding:12px 15px;border-radius:4px;font-size:11px;white-space:nowrap; }
  .floor-filters { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 8px;margin:0 0 23px;padding:16px 13px;border:1px solid #e5d8c6;border-radius:14px; }
  .floor-filters-label { font-size:11px;margin:0;gap:7px; }
  .floor-filters-label svg { width:18px;height:18px;flex-basis:18px; }
  .floor-filter-options { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%; }
  .floor-filter-options button { min-height:48px;padding:10px 12px;border-radius:9px;gap:6px;font-size:12px; }
  .floor-filter-options button[data-floor-filter='all'] { grid-column:1/-1; }
  .floor-filter-options button span { flex-basis:23px;min-width:23px;height:23px;font-size:10px; }
  .floor-filter-status { margin:0;font-size:9px; }

  .reviews-intro { max-width:none; }
  .reviews-intro p+p { margin-top:9px;font-size:11px;line-height:1.65; }
  .reviews-layout { grid-template-columns:1fr;gap:27px; }
  .reviews-sources { grid-template-columns:repeat(2,minmax(0,1fr));gap:13px; }
  .reviews-address { padding:0 0 3px;font-size:11px; }
  .reviews-source-card { padding:15px 13px 0;border-radius:6px; }
  .reviews-source-name { grid-template-columns:1fr;gap:8px; }
  .reviews-source-name h3 { font-size:12px; }
  .reviews-source-domain { font-size:9px; }
  .reviews-source-link { min-height:50px;font-size:10px;margin-top:13px;padding-block:10px; }
  .guest-photos { border-radius:8px;overflow:hidden; }
  .guest-photos-heading { padding:19px 17px 17px; }
  .guest-photos-heading h3 { font-size:28px; }
  .guest-photos-heading p { font-size:8px;margin-bottom:8px; }
  .guest-photo-image { height:260px; }
  .guest-photo-caption { min-height:71px;padding:13px 17px; }
  .guest-photo-caption strong { font-size:12px;line-height:1.5; }
  .guest-photo-caption small { font-size:10px;margin-top:4px; }
  .guest-photos-footer { min-height:54px;padding:5px 9px 5px 17px; }
  .guest-photos-footer>a { min-height:44px;font-size:9px; }
  .guest-photos-counter { font-size:10px;min-width:31px; }
  .guest-photos-controls button { width:44px;height:44px;border-radius:50%; }
  .reviews-live-label { min-height:39px;font-size:10px;padding-bottom:13px; }
  .reviews-live-domain { font-size:9px; }
  .reviews-widget { min-width:0;height:560px;border-radius:12px; }
  .reviews-widget .reviews-live-frame { min-width:300px;height:1360px; }
  .reviews-widget-cover { border-radius:12px; }
  .reviews-scroll-controls { min-height:59px;gap:8px;padding:7px 0; }
  .reviews-scroll-controls>span { font-size:11px; }
  .reviews-scroll-controls [data-review-scroll] { width:44px;height:44px;border-radius:50%; }
  .reviews-widget-fallback { min-height:44px;font-size:11px; }

  .footer-main { display:grid;grid-template-columns:1fr;gap:29px;padding:49px 0 28px; }
  .footer-intro { margin:0; }
  .footer .eyebrow { margin-bottom:15px;font-size:8px;line-height:1.6; }
  .footer h2 { font:400 clamp(43px,12vw,64px)/1.08 var(--serif);letter-spacing:-.01em; }
  .footer-contact { padding-top:23px;border-top:1px solid #e0c29c33; }
  .footer-contact>span { font-size:8px;letter-spacing:.12em;margin:0 0 13px; }
  .footer-contact>a:nth-child(2) { display:flex;align-items:center;min-height:44px;font-size:26px;letter-spacing:-.05em; }
  .footer-message { min-height:44px;align-items:center;margin:9px 0 0;padding:8px 0;font-size:13px; }
  .footer-email { min-height:44px;display:flex;align-items:center;margin-top:3px;font-size:13px; }
  .footer-addresses { display:flex;gap:0; }
  .footer-addresses>span { font-size:8px;margin:0 0 10px; }
  .footer-addresses>a { display:flex;align-items:center;min-height:44px;margin:0;font-size:13px; }
  .footer-addresses .footer-choose { min-height:44px;margin-top:6px;padding:8px 0;font-size:12px; }
  .footer-legal { display:grid;grid-template-columns:1fr 1fr;gap:0 14px;padding:17px 0;font-size:11px;line-height:1.6; }
  .footer-legal>a,.footer-legal>button { display:flex;align-items:center;min-height:44px;padding:10px 0;text-align:left; }
  .footer-bottom { min-height:64px;padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));align-items:center;font-size:10px; }
  .footer-bottom>a { display:flex;align-items:center;min-height:44px; }

  .photo-dialog { position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:calc(60px + env(safe-area-inset-top,0px)) 0 env(safe-area-inset-bottom,0px);border-radius:0;overflow-y:auto; }
  .dialog-track { height:calc(100svh - 205px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));min-height:160px; }
  .dialog-close { position:fixed;top:calc(9px + env(safe-area-inset-top,0px));right:max(16px,env(safe-area-inset-right,0px));width:44px;height:44px;border:1px solid #e0c29c55;border-radius:50%;font-size:27px; }
  .dialog-prev,.dialog-next { position:fixed;top:46%;width:44px;height:44px;border:1px solid #e0c29c55;border-radius:50%;font-size:23px; }
  .dialog-prev { left:max(10px,env(safe-area-inset-left,0px)); }
  .dialog-next { right:max(10px,env(safe-area-inset-right,0px)); }
  .dialog-caption { align-items:center;min-height:56px;padding:12px 19px;gap:12px;font-size:11px;line-height:1.6; }
  .dialog-caption span { min-width:0; }
  .dialog-caption small { font-size:10px; }
  .dialog-thumbs { padding:2px 16px 16px;gap:7px; }
  .dialog-thumbs button { min-width:64px;min-height:48px; }
  .privacy-dialog { width:calc(100% - 28px);max-height:calc(100svh - 28px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:22px; }
  .privacy-choice { font-size:13px; }
  .privacy-choice small { font-size:11px;line-height:1.65; }
  .privacy-close { min-width:44px;min-height:44px; }
  .privacy-dialog-actions { display:grid;grid-template-columns:1fr;gap:9px; }
  .privacy-button { font-size:12px;min-height:44px; }
  .cookie-notice { left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:18px;border-radius:8px;max-height:calc(100svh - 100px);gap:14px; }
  .cookie-copy { font-size:11px;line-height:1.6; }
  .cookie-copy strong { font-size:15px;margin-bottom:7px; }
  .cookie-buttons { gap:8px; }
  .cookie-buttons .privacy-button { font-size:11px; }
}
@media (max-width:359px) {
  :root { --mobile-gutter:10px; }
  .site-header,.site-header.scrolled { padding-inline:16px; }
  .hero .wrap { width:calc(100% - 36px); }
  .brand>span { font-size:22px; }
  .brand svg { width:31px; }
  .brand small { font-size:4.7px;letter-spacing:.14em; }
  .hero { min-height:700px;grid-template-rows:minmax(135px,1fr) auto auto; }
  .hero h1 { font-size:42px; }
  .hero-description { gap:12px; }
  .hero-description-number { font-size:43px; }
  .hero-description-copy { font-size:11px; }
  .hero-facts { gap:9px;font-size:8px; }
  .hero-facts b { font-size:20px; }
  .scroll-cue { margin-left:1px; }
  .section-head,.reviews-heading,.group-head { padding-inline:8px; }
  .section-head h2,.reviews-heading h2 { font-size:35px; }
  .address-card-bottom { padding-inline:17px; }
  .apartment-info { padding:20px 16px 17px; }
  .card-booking { padding-inline:11px;gap:7px;font-size:10px; }
  .card-price strong { font-size:22px; }
  .card-facts { gap:8px;font-size:10px; }
  .card-facts span+span { padding-left:8px; }
  .guest-photo-image { height:230px; }
  .guest-photos-heading h3 { font-size:26px; }
  .reviews-scroll-controls>span { font-size:10px; }
  .footer-main,.footer-legal,.footer-bottom { width:calc(100% - 36px); }
  .footer-legal { grid-template-columns:1fr; }
}
@media (max-width:950px) and (orientation:landscape) {
  :root { --mobile-header:64px;--mobile-gutter:28px; }
  .brand>span { font-size:24px; }
  .brand small { font-size:5px; }
  .hero { min-height:520px;height:auto;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;padding-top:var(--mobile-hero-padding-top,calc(var(--mobile-header) + env(safe-area-inset-top,0px))); }
  .hero-copy { grid-row:1;grid-column:2;width:calc(100% - 35px);padding:28px 0 24px;margin:0 28px 0 7px; }
  .hero-shade { background:linear-gradient(90deg,#3020161a 0%,#30201666 42%,#302016df 64%,#302016fa 100%); }
  .hero-image { object-position:32% center; }
  .hero h1 { font-size:clamp(34px,5.2vw,46px); }
  .hero .eyebrow { margin-bottom:12px;font-size:7px; }
  .hero-description { margin:16px 0 19px;gap:12px; }
  .hero-description-number { font-size:40px; }
  .hero-description-copy { font-size:11px; }
  .hero-cta { min-height:52px; }
  .hero-foot { grid-row:2;grid-column:1/-1;width:calc(100% - 56px);padding:14px 0 18px; }
  .hero-facts { max-width:350px; }
  .scroll-cue { margin-left:auto; }
  .mobile-menu { max-height:calc(100dvh - var(--mobile-header) - env(safe-area-inset-top,0px));padding-top:5px;padding-bottom:12px; }
  .mobile-menu a { min-height:44px;padding:10px 0;font-size:24px; }
  .mobile-menu a[href^='tel:'] { min-height:46px;font-size:15px;padding:11px 15px;margin-top:12px; }
  .apartment-group[data-columns] .apartments-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:20px; }
  .address-map { height:220px; }
  .address-card-top { font-size:7px; }
  .address-card-bottom h3 { font-size:22px; }
  .card-visual { aspect-ratio:1.25; }
  .guest-photo-image { height:300px; }
  .footer-main { grid-template-columns:1fr 1fr; }
  .footer-addresses { grid-column:1/-1; }
  .footer-legal { grid-template-columns:1fr 1fr;gap:0 20px; }
  .dialog-track { height:calc(100dvh - 180px);min-height:140px; }
}
@media (prefers-reduced-motion:reduce) {
  .mobile-menu,.menu-toggle span { transition:none!important; }
}

/* The landscape notch is allowed over photography, never over reading or controls. */
@media (max-width:950px) and (orientation:landscape) {
  :root { --landscape-left:max(28px,env(safe-area-inset-left,0px));--landscape-right:max(28px,env(safe-area-inset-right,0px)); }
  .wrap,.guest-reviews .reviews-wrap,.hero .hero-foot { width:calc(100% - var(--landscape-left) - var(--landscape-right));margin-left:var(--landscape-left);margin-right:var(--landscape-right); }
  .hero .hero-copy { width:calc(100% - 7px - var(--landscape-right));margin:0 var(--landscape-right) 0 7px; }
  .dialog-caption,.dialog-thumbs { padding-left:var(--landscape-left);padding-right:var(--landscape-right); }
  .cookie-notice { left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px)); }
}
