/* Alpform & Flow "opening soon" stub. Palette Mineral Spa, fonts self-hosted (no Google Fonts request).
   The whole page fits one screen: body is a full-height column, sizes scale with the viewport height (vh/svh). */
@font-face{font-family:"Jost";font-style:normal;font-display:swap;font-weight:300 600;src:url(fonts/jost-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Jost";font-style:normal;font-display:swap;font-weight:300 600;src:url(fonts/jost-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-display:swap;font-weight:300 700;src:url(fonts/cormorant-garamond-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-display:swap;font-weight:300 700;src:url(fonts/cormorant-garamond-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --dark:#1F4D4F; --light:#EDF4F2; --neutral:#BFD6D2; --accent:#C98E66; --accent-text:#8A5634; --soft:#3E6567;
  --serif:"Cormorant Garamond",Georgia,serif; --sans:"Jost",system-ui,sans-serif;
  --vh:1vh;
}
@supports (height:1svh){:root{--vh:1svh}}  /* phones: the height with the browser bars shown */
*{box-sizing:border-box}
html,body{margin:0}
body{min-height:calc(100 * var(--vh));display:flex;flex-direction:column;background:var(--light);color:var(--dark);
  font-family:var(--sans);font-weight:350;line-height:1.5;font-size:16px;-webkit-text-size-adjust:100%}
a{color:inherit}

.top{display:flex;justify-content:flex-end;padding:max(10px,1.6vh) 14px 0}
.langs{display:flex;gap:2px}
.langs a{font-size:13px;letter-spacing:.08em;text-decoration:none;padding:8px;border-radius:6px;opacity:.7}
.langs a:hover{opacity:1;background:rgba(31,77,79,.08)}
.langs a[aria-current]{opacity:1;font-weight:600;text-decoration:underline;text-underline-offset:4px}

.hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1vh 20px}
.badge{font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--light);background:var(--dark);
  border-radius:999px;padding:6px 14px;margin-bottom:clamp(14px,4vh,40px)}
.mark{--flow:var(--accent);display:block;width:min(300px,62vw,30 * var(--vh));height:auto;margin:0 auto clamp(6px,1.6vh,18px);color:var(--dark)}
h1{margin:0;font-weight:600}
h1 .n1{display:block;font-family:var(--serif);font-size:clamp(36px,min(11vw,8 * var(--vh)),78px);line-height:1.05}
h1 .n1 i{font-style:italic;font-weight:500;color:var(--accent-text)}
h1 .n2{display:block;font-size:clamp(11px,1.6 * var(--vh),14px);font-weight:500;letter-spacing:.32em;text-transform:uppercase;margin-top:clamp(6px,1.2vh,12px)}
.lead{text-wrap:balance;font-family:var(--serif);font-style:italic;font-size:clamp(19px,min(5.2vw,3.2 * var(--vh)),28px);line-height:1.25;margin:clamp(10px,3vh,32px) 0 0;max-width:22em}

.info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(1040px,100% - 40px);margin:0 auto clamp(12px,3vh,36px);
  border-top:1px solid var(--neutral);border-bottom:1px solid var(--neutral)}
.item{padding:clamp(12px,2.4vh,26px) 22px}
.item + .item{border-left:1px solid var(--neutral)}
.item h2{margin:0 0 4px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text)}
.item .main{margin:0;font-variant-numeric:lining-nums;font-family:var(--serif);font-style:normal;font-weight:600;font-size:clamp(20px,2.6 * var(--vh),25px);line-height:1.2}
.item .sub{margin:4px 0 0;font-size:14px;color:var(--soft);line-height:1.4}
.item .sub a{color:var(--dark);font-weight:500;text-underline-offset:3px}

footer{text-align:center;font-size:12px;color:var(--soft);padding:0 20px clamp(10px,2vh,20px)}

/* Phones and narrow windows: the info strip becomes three compact rows (label left, text right). */
@media (max-width:760px){
  .info{grid-template-columns:minmax(0,1fr);width:calc(100% - 32px)}
  .item{display:grid;grid-template-columns:6.4em minmax(0,1fr);column-gap:12px;padding:clamp(8px,1.5vh,14px) 2px}
  .item + .item{border-left:0;border-top:1px solid var(--neutral)}
  .item h2{grid-row:span 2;margin:4px 0 0;font-size:11px;line-height:1.3}
  .item .main{font-size:clamp(18px,2.6 * var(--vh),22px)}
  .item .sub{font-size:13px;margin-top:2px}
}
@media (max-width:760px) and (max-height:620px){.item .sub{display:none}.item:nth-child(2) .sub{display:block}}

/* 404 page */
.nf p{margin:10px 0 0;font-size:17px}
.nf p:first-of-type{margin-top:clamp(16px,4vh,36px)}
.nf a{font-weight:500;text-underline-offset:3px}
