/* glasz — kit presse (presse.html) */
/* Layout: a bar ticket on paper — black "service" bands alternate with paper sheets, mono timestamps as the structural rail. Single committed look (brand V2), colors set explicitly. */
@font-face{font-family:'Benzin';src:url('../fonts/Benzin-Bold.woff2') format('woff2');font-weight:400 900;font-display:swap}
@font-face{font-family:'Onest';src:url('../fonts/Onest-var.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Plex';src:url('../fonts/IBMPlexMono-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Plex';src:url('../fonts/IBMPlexMono-SemiBold.woff2') format('woff2');font-weight:600;font-display:swap}
:root{
  --paper:#f3f2ef; --paper-2:#e6e4df; --black:#0a0a0d; --black-2:#16151a;
  --ink:#55545a; --ink-soft:#8a8990; --red:#ff0a3d; --red-dim:#c40830; --white:#ffffff;
  --line:rgba(10,10,13,.16); --line-d:rgba(255,255,255,.14);
  --f-display:'Benzin','Arial Black','Helvetica Neue',sans-serif;
  --f-body:'Onest',system-ui,-apple-system,'Segoe UI',sans-serif;
  --f-mono:'Plex',ui-monospace,'SF Mono',Menlo,monospace;
  color-scheme:light;
}
*{box-sizing:border-box}
body{background:var(--paper);color:var(--black);font-family:var(--f-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.wrap{max-width:1180px;margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
.mono{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.band{padding-block:clamp(56px,8vw,104px)}
.band--dark{background:var(--black);color:var(--paper)}
.band--dark .muted{color:#a9a8ae}
.muted{color:var(--ink)}
h1,h2,h3{font-family:var(--f-display);font-weight:700;line-height:.98;letter-spacing:-.01em;text-wrap:balance;margin:0}
h2{font-size:clamp(30px,4.6vw,54px);text-transform:uppercase}
h3{font-size:18px;text-transform:uppercase;letter-spacing:.01em}
p{margin:0}
.red{color:var(--red)}
.sec-head{display:grid;grid-template-columns:200px 1fr;gap:24px 40px;align-items:start;margin-bottom:clamp(32px,5vw,56px)}
.sec-head .mono{padding-top:10px;border-top:2px solid currentColor}
@media screen and (max-width:760px){.sec-head{grid-template-columns:1fr}}

/* top bar */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--black);color:var(--paper);border-bottom:1px solid var(--line-d)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px}
.top nav{display:flex;gap:18px;flex-wrap:wrap;overflow-x:auto}
.top nav a{text-decoration:none;color:#a9a8ae}
.top nav a:hover{color:var(--white)}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--f-display);letter-spacing:.32em;font-size:14px}
.brand svg{width:22px;height:22px}
@media screen and (max-width:820px){.top nav{display:none}}

/* hero */
.hero{position:relative;background:var(--black);color:var(--paper);overflow:hidden}
.hero__img{position:absolute;inset:0;background:url('../images/hero-waiter.webp') center/cover no-repeat;opacity:.38;filter:grayscale(1) contrast(1.1)}
.hero__img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--black) 18%,rgba(10,10,13,.4) 70%,rgba(10,10,13,.75))}
.hero .wrap{position:relative;padding-block:clamp(64px,10vw,128px) clamp(40px,6vw,64px);display:grid;gap:40px}
.hero h1{font-size:clamp(46px,9.5vw,128px);text-transform:uppercase}
.hero h1 em{font-style:normal;color:var(--red)}
.hero__lede{max-width:560px;font-size:clamp(17px,1.6vw,20px);color:#d9d8d5}
.hero__meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-d);padding-top:18px;gap:16px}
.hero__meta div{display:grid;gap:4px}
.hero__meta b{font-family:var(--f-body);font-weight:600;font-size:15px;letter-spacing:0;text-transform:none;color:var(--white)}
@media screen and (max-width:700px){.hero__meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
.stamp{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--red);color:var(--red);padding:6px 10px;width:max-content}
.stamp i{width:7px;height:7px;background:var(--red);border-radius:50%}

/* fiche */
.fiche{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--black)}
.fiche > div{padding:18px 18px 20px 0;border-bottom:1px solid var(--line);display:grid;gap:6px;align-content:start}
.fiche > div:not(:nth-child(3n+1)){padding-left:18px;border-left:1px solid var(--line)}
.fiche .mono{color:var(--ink-soft)}
.fiche b{font-weight:600;font-size:17px}
@media screen and (max-width:760px){.fiche{grid-template-columns:1fr}.fiche > div:not(:nth-child(3n+1)){padding-left:0;border-left:0}}
.tbc{background:rgba(255,10,61,.1);color:var(--red-dim);border:1px dashed var(--red-dim);padding:0 6px;font-family:var(--f-mono);font-size:12px;font-weight:600;letter-spacing:.04em}

/* boilerplate */
.copies{display:grid;grid-template-columns:1fr 1.4fr;gap:24px}
@media screen and (max-width:860px){.copies{grid-template-columns:1fr}}
.copy{background:var(--white);border:1px solid var(--line);padding:24px;display:grid;gap:16px;align-content:start;min-width:0}
.copy__head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.copy p+p{margin-top:12px}
.copy__txt{display:grid;gap:12px;max-width:68ch}
.btn{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;border:1px solid currentColor;background:transparent;color:inherit;padding:8px 12px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.btn:hover{background:var(--black);color:var(--paper);border-color:var(--black)}
.band--dark .btn:hover{background:var(--paper);color:var(--black);border-color:var(--paper)}
.btn--red{background:var(--red);border-color:var(--red);color:var(--white)}
.btn--red:hover{background:var(--red-dim)!important;border-color:var(--red-dim)!important;color:var(--white)!important}

/* story */
.story{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px)}
.story p{font-size:18px;max-width:58ch}
.story p+p{margin-top:16px}
.quote{border-left:3px solid var(--red);padding-left:22px;display:grid;gap:16px;align-content:start}
.quote blockquote{margin:0;font-family:var(--f-display);font-size:clamp(22px,2.6vw,32px);line-height:1.1;text-transform:uppercase}
@media screen and (max-width:860px){.story{grid-template-columns:1fr}}

/* timeline */
.service{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line-d)}
.slot{padding:18px 14px 22px;border-right:1px solid var(--line-d);display:grid;gap:10px;align-content:start;min-width:0}
.slot:last-child{border-right:0}
.slot time{font-family:var(--f-display);font-size:26px;color:var(--white)}
.slot .mono{color:var(--red)}
.slot p{font-size:14px;color:#b9b8bd}
.slot .plan{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#7d7c83}
@media screen and (max-width:1000px){.service{grid-template-columns:repeat(2,minmax(0,1fr))}.slot{border-bottom:1px solid var(--line-d)}.slot:nth-child(2n){border-right:0}}
@media screen and (max-width:520px){.service{grid-template-columns:1fr}.slot{border-right:0}}

/* numbers */
.nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:2px solid var(--black)}
.num{padding:22px 18px 26px 0;border-bottom:1px solid var(--line);display:grid;gap:8px}
.num:not(:nth-child(3n+1)){padding-left:18px;border-left:1px solid var(--line)}
.nums--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.nums--4 .num:not(:nth-child(3n+1)){padding-left:0;border-left:0}.nums--4 .num:not(:first-child){padding-left:18px;border-left:1px solid var(--line)}
@media screen and (max-width:860px){.nums--4{grid-template-columns:1fr 1fr}.nums--4 .num:nth-child(3){padding-left:0;border-left:0}}
@media screen and (max-width:520px){.nums--4{grid-template-columns:1fr}.nums--4 .num:not(:first-child){padding-left:0;border-left:0}}
.num h3{font-size:17px}
.num b{font-family:var(--f-display);font-size:clamp(40px,5vw,64px);line-height:1;font-weight:700}
.num b em{font-style:normal;color:var(--red)}
@media screen and (max-width:700px){.nums{grid-template-columns:1fr}.num:not(:nth-child(3n+1)){padding-left:0;border-left:0}}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.plan-c{border:1px solid var(--line-d);padding:24px;display:grid;gap:14px;align-content:start}
.plan-c--hl{border-color:var(--red);background:var(--black-2)}
.plan-c .price{font-family:var(--f-display);font-size:44px;color:var(--white);line-height:1}
.plan-c .price small{font-family:var(--f-body);font-size:14px;color:#a9a8ae;font-weight:400}
.plan-c ul{margin:0;padding:0;list-style:none;display:grid;gap:6px;font-size:14px;color:#c9c8cc}
.plan-c li::before{content:"— ";color:var(--red)}
.plans--2{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}
@media screen and (max-width:860px){.plans,.plans--2{grid-template-columns:1fr}}

/* team */
.team{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.person{display:grid;align-items:start;grid-template-columns:200px 1fr;gap:22px;background:var(--white);border:1px solid var(--line);padding:16px}
.person img{width:100%;height:auto;aspect-ratio:1000/1114;object-fit:cover;filter:grayscale(1);display:block}
.person > div{display:grid;gap:10px;align-content:start;min-width:0;padding-top:6px}
.person h3{font-size:22px}
.person .mono{color:var(--red-dim)}
.person p{font-size:15px;color:var(--ink)}
@media screen and (max-width:980px){.team{grid-template-columns:1fr}}
@media screen and (max-width:520px){.person{grid-template-columns:1fr}}

/* assets */
.logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:40px}
.logo-tile{display:grid;grid-template-rows:200px auto;border:1px solid var(--line)}
.logo-tile .pv{display:grid;place-items:center}
.logo-tile .pv svg{height:110px;width:110px}
.logo-tile .pv--dark{background:var(--black);color:var(--white)}
.logo-tile .pv--light{background:var(--white);color:var(--black)}
.logo-tile .pv--red{background:var(--red);color:var(--white)}
.logo-tile .pv .word{font-family:var(--f-display);font-size:clamp(20px,2.4vw,30px);letter-spacing:.42em;margin-left:.42em;display:flex;align-items:center;gap:18px}
.logo-tile .pv .word svg{height:54px;width:54px}
.logo-tile footer{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--line);background:var(--white);flex-wrap:wrap}
@media screen and (max-width:860px){.logos{grid-template-columns:1fr}}
.shots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.shot{display:grid;gap:8px;text-decoration:none;min-width:0}
.shot img{width:100%;aspect-ratio:720/1558;object-fit:cover;border:1px solid var(--line);background:var(--black);display:block;transition:transform .25s ease}
.shot:hover img{transform:translateY(-4px)}
.shot span{font-size:12px}
@media screen and (max-width:1000px){.shots{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media screen and (max-width:520px){.shots{grid-template-columns:repeat(2,minmax(0,1fr))}}
.photos{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-top:28px}
.photos a{display:grid;gap:8px;text-decoration:none;min-width:0}
.photos img{width:100%;height:240px;object-fit:cover;display:block;border:1px solid var(--line)}
.photos span{font-size:12px}
@media screen and (max-width:760px){.photos{grid-template-columns:1fr}}
.sub{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:40px 0 16px;border-top:1px solid var(--line);padding-top:14px;flex-wrap:wrap}

/* identity */
.ident{display:grid;grid-template-columns:1.2fr 1fr;gap:32px}
.swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.sw{display:grid;grid-template-rows:110px auto;border:1px solid var(--line-d)}
.sw div{padding:10px;display:grid;gap:2px;font-size:13px}
.sw .mono{font-size:11px;color:#a9a8ae}
.types{display:grid;gap:14px}
.type{border-top:1px solid var(--line-d);padding-top:12px;display:flex;justify-content:space-between;gap:16px;align-items:baseline;flex-wrap:wrap}
.type .sample{font-size:30px;line-height:1}
@media screen and (max-width:860px){.ident{grid-template-columns:1fr}.swatches{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* contact */
.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:end}
.contact h2{font-size:clamp(40px,7vw,92px)}
.c-list{display:grid;border-top:2px solid var(--white)}
.c-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--line-d);flex-wrap:wrap}
.c-row b{font-size:18px;font-weight:600;color:var(--white);user-select:all}
.c-row a{text-decoration:none}
@media screen and (max-width:860px){.contact{grid-template-columns:1fr}}
.foot{background:var(--black);color:#7d7c83;border-top:1px solid var(--line-d)}
.foot .wrap{display:flex;justify-content:space-between;gap:16px;padding-block:20px;flex-wrap:wrap}

.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);background:var(--red);color:var(--white);padding:10px 16px;font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:0;transition:.25s;pointer-events:none;z-index:20}
.toast.on{opacity:1;transform:translate(-50%,0)}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

.hero__top{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.hero__pdf{color:var(--paper)}
@media print{
  @page{size:1280px 1810px;margin:0}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .top,.hero__pdf,.toast,.btn{display:none!important}
  .band{padding-block:40px;break-inside:auto}
  .slot,.num,.plan-c,.person,.copy,.logo-tile,.shot,.photos a,.sw,.c-row,.sec-head{break-inside:avoid}
  .sec-head{break-after:avoid}
  .shot img:hover{transform:none}
  .service{grid-template-columns:repeat(4,minmax(0,1fr))}
  .slot{border-bottom:1px solid var(--line-d)}
  .slot:nth-child(4n){border-right:0}
  .logo-tile .pv .word{font-size:22px;letter-spacing:.3em}
}
