/* Norma V2 visual storytelling: human-first, Samsung QM55B-T portrait-safe.
 * All cards stay within the existing 9:16 kiosk, including older Tizen Chromium.
 * Sizes use equivalent min(vw, 9:16 vh) instead of unsupported container query units.
 * Uploaded/approved JPGs are hosted by this repo's Cloudflare Pages assets.
 */
.norma-home{background:linear-gradient(165deg,#f3fbfd 0%,#e4f2f7 70%,#d9eff5 100%);color:#062745}
.norma-shell{display:flex;flex-direction:column;box-sizing:border-box;height:100%;width:100%;padding:4.5% 4.8% 3.2%;gap:1.6%;overflow:hidden}
.norma-header{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:0 0 26%;min-height:0;padding:0 1.4%}
.norma-logo{display:block;width:36%;height:34%;object-fit:contain;object-position:left center}
.norma-kicker{display:block;letter-spacing:.14em;font-size:clamp(9px,min(1.6vw,0.9vh),25px);font-weight:900;color:#008aab;margin-top:1.2%}
.norma-header h1{font-family:Inter,Aptos,Arial,sans-serif;font-size:clamp(24px,min(5.1vw,2.86875vh),72px);line-height:1.08;letter-spacing:-.04em;margin:2% 0 1.4%;font-weight:900;max-width:95%;color:#072f55}
.norma-header p{font-size:clamp(11px,min(2.15vw,1.20937vh),30px);line-height:1.35;margin:0;color:#315b70;max-width:94%;font-weight:550}
.norma-path-grid{flex:1 1 0;min-height:0;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:2.2%}
.norma-path{position:relative;display:block;text-align:left;box-sizing:border-box;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;border:1px solid #d6e6e9;border-radius:min(4.2vw,2.3625vh);background:#074261;
  color:white;text-decoration:none;box-shadow:0 8px 20px #03253c20;cursor:pointer;padding:0;appearance:none;-webkit-appearance:none;touch-action:manipulation}
.norma-path:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;
  background:linear-gradient(to bottom,rgba(4,28,48,.04) 0%,rgba(4,30,50,.12) 26%,rgba(2,22,42,.87) 89%)}
.norma-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 33%;transform:scale(1.002)}
.norma-path:nth-child(1) .norma-photo{object-position:54% 33%}
.norma-path:nth-child(2) .norma-photo{object-position:51% 28%}
.norma-path:nth-child(3) .norma-photo{object-position:50% 38%}
.norma-path:nth-child(4) .norma-photo{object-position:46% 33%}
.norma-path-copy{z-index:2;position:absolute;left:6%;right:8%;bottom:6%;display:flex;flex-direction:column;gap:clamp(3px,.min(6vw,3.375vh),10px)}
.norma-path-badge{display:inline-block;align-self:flex-start;color:#a9f7f2;font-size:clamp(8px,min(1.45vw,0.81562vh),20px);font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.norma-path-copy strong{display:block;font-size:clamp(15px,min(3.65vw,2.05313vh),48px);font-weight:900;line-height:1.08;letter-spacing:-.025em;text-shadow:0 1px 4px #03233d}
.norma-path-copy small{display:block;font-size:clamp(10px,min(1.95vw,1.09688vh),26px);font-weight:550;line-height:1.25;color:#f4fbff}
.norma-path-arrow{z-index:2;position:absolute;top:4%;right:5%;width:clamp(23px,min(5vw,2.8125vh),72px);height:clamp(23px,min(5vw,2.8125vh),72px);border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:clamp(16px,min(2.8vw,1.575vh),40px);background:#0a324a9e;border:1px solid #d1eff5aa}
.norma-path:focus-visible,.norma-path:hover{outline:3px solid #f2a845;outline-offset:-3px}
.norma-path:active{transform:scale(.991)}
.norma-home-footer{flex:0 0 11%;min-height:0;display:flex;flex-direction:column;gap:5%;justify-content:center;align-items:center}
.norma-meeting-cta{width:100%;min-height:54%;border:0;border-radius:999px;background:#009abf;color:#fff;font-size:clamp(13px,min(2.7vw,1.51875vh),38px);font-weight:900;
  box-shadow:0 6px 16px #00769b32;display:flex;align-items:center;justify-content:center;gap:min(1.5vw,0.84375vh);padding:0 4%;touch-action:manipulation}
.norma-meeting-cta span{font-size:1.2em}
.norma-home-footer p{margin:0;text-align:center;font-size:clamp(9px,min(1.4vw,0.7875vh),20px);line-height:1.3;font-weight:600;color:#456476}
.norma-scene{position:relative;width:100%;height:min(42vw,23.625vh);max-height:26vh;border-radius:min(4vw,2.25vh);overflow:hidden;background:#174969;margin:min(2vw,1.125vh) 0 min(3vw,1.6875vh)}
.norma-scene img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
.norma-scene:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(0deg,#001e39b8,transparent 62%);pointer-events:none}
.norma-scene .norma-scene-label{position:absolute;bottom:5%;left:5%;right:5%;color:white;z-index:2;font-size:clamp(13px,min(2.75vw,1.54688vh),38px);font-weight:900;text-shadow:0 2px 6px #0006}
.security-scene{background-image:linear-gradient(130deg,#0c385eb5,#0d1b3570),url("./assets/norma/connected-home-advisor.jpg");background-size:cover;background-position:center 35%}
.security-scene .device{background:#fffef5;border-color:#d4e5ef;color:#0a3e5d}
.office-scene img{object-fit:cover;object-position:center 38%}
.qr-area .qr{display:flex;align-items:center;justify-content:center;width:auto;height:auto;min-width:220px;max-width:100%;margin:0 auto;grid-template-columns:none;grid-template-rows:none;border:0;background:transparent}
.qr-area .qr img,.qr-area .qr canvas{display:block;width:clamp(180px,min(34vw,19.125vh),280px)!important;height:clamp(180px,min(34vw,19.125vh),280px)!important;max-width:90%;border:8px solid #fff}
.booking-direct{display:block;background:#009abf;color:white;font-weight:900;text-decoration:none;text-align:center;padding:min(3vw,1.6875vh);border-radius:100px;font-size:min(2.8vw,1.575vh);margin-top:min(2vw,1.125vh)}
.book-privacy-note{font-size:min(2.3vw,1.29375vh);color:#3f586d;line-height:1.45}
@media (max-width:570px){.norma-logo{width:38%;height:32%}.norma-header{flex-basis:24%}.norma-path-grid{gap:1.8%}.norma-path-copy{bottom:6%;left:6%;right:6%}.norma-path-copy small{line-height:1.2}}
@media (prefers-reduced-motion:reduce){.norma-path,.norma-photo{transition:none!important;animation:none!important}}
