/* ==========================================================
   SPLOT — arkusz stylów
   Kolory i typografia wyprowadzone z logo.
   Wszystko, co chcesz zmienić globalnie, jest w bloku :root.
   ========================================================== */

:root{
  /* --- paleta z logo --- */
  --green:#1C3E26;
  --green-deep:#122A1A;
  --green-mid:#385C42;
  --green-wash:#EAEFE7;
  --cream:#E7E3BE;
  --cream-pale:#F3F0E0;
  --paper:#FCFBF4;
  --ink:#15271B;
  --ink-soft:#4B5A4F;
  --ink-faint:#7E8C82;
  --line:#E0DBC5;
  --card:#FFFFFF;
  --shadow-s:0 1px 2px rgba(18,42,26,.05);
  --shadow-m:0 2px 6px rgba(18,42,26,.05), 0 14px 40px rgba(18,42,26,.07);
  --shadow-l:0 4px 12px rgba(18,42,26,.06), 0 28px 70px rgba(18,42,26,.10);

  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;

  --wrap:1180px;
  /* miara kolumny tekstu liczona w znakach, nie w pikselach:
     ok. 64 znaki to zakres, w ktorym oko trafia w nastepny wiersz bez wysilku */
  --text:64ch;
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--paper);color:var(--ink);
  /* 400 zamiast 300: Poppins Light na kremowym tle rozmywa sie i meczy oko.
     Interlinia 1.7 zamiast 1.78 — akapit trzyma sie razem jako blok. */
  font:400 18px/1.7 var(--sans);
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
  text-rendering:optimizeLegibility;
  font-kerning:normal;
}
/* height:auto jest tu kluczowe. Atrybuty width/height w <img> trafiaja do stylu
   przegladarki, wiec bez tego height="1000" wymusza kafel wysoki na 1000px
   i unieważnia aspect-ratio ustawione nizej. Reguly z wlasna wysokoscia
   (hero, kolumny) maja wyzsza specyficznosc i nadal wygrywaja. */
img{max-width:100%;height:auto;display:block}
a{color:var(--green);text-underline-offset:3px}
::selection{background:var(--cream);color:var(--green)}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 26px}
.text{max-width:var(--text)}
.narrow{max-width:600px}
section{padding:clamp(56px,8vw,110px) 0;position:relative}
section.tight{padding:clamp(36px,5vw,64px) 0}

/* ---------- NAGŁÓWEK ---------- */
.nav{
  position:sticky;top:0;z-index:60;
  background:rgba(252,251,244,.82);backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid transparent;transition:border-color .4s,background .4s;
}
.nav.scrolled{border-bottom-color:var(--line);background:rgba(252,251,244,.95)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:76px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand .mark{width:40px;height:40px;transition:transform .6s var(--ease)}
.brand:hover .mark{transform:rotate(180deg)}
.brand .wm{width:auto;height:20px}
.nav ul{display:flex;gap:30px;list-style:none;margin:0;padding:0;align-items:center}
.nav ul a{
  color:var(--ink-soft);text-decoration:none;font-size:14.5px;font-weight:400;letter-spacing:.01em;
  position:relative;padding:4px 0;
}
.nav ul a::after{
  content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--green);
  transition:width .35s var(--ease);
}
.nav ul a:hover::after,.nav ul a[aria-current="page"]::after{width:100%}
.nav ul a:hover,.nav ul a[aria-current="page"]{color:var(--green)}
.nav .cta{
  background:var(--green);color:var(--cream);padding:11px 22px;border-radius:999px;
  font-size:14px;font-weight:500;letter-spacing:.02em;transition:transform .3s var(--ease),background .3s;
}
.nav .cta::after{display:none}
.nav .cta:hover{background:var(--green-mid);color:var(--cream);transform:translateY(-2px)}

/* ---------- TYPOGRAFIA ---------- */
h1,h2,h3{
  font-family:var(--serif);font-weight:400;line-height:1.05;color:var(--green);
  font-variation-settings:"SOFT" 22,"WONK" 0,"opsz" 100;letter-spacing:-.015em;
}
h1{font-size:clamp(42px,7.4vw,88px);margin:0 0 22px}
h2{font-size:clamp(30px,4.4vw,52px);margin:0 0 22px}
h3{font-size:clamp(22px,2.2vw,28px);margin:44px 0 12px}
h4{font-size:15px;margin:26px 0 8px;font-weight:600;font-family:var(--sans);letter-spacing:.02em;color:var(--green)}
/* naglowki lamia sie na rownowazne wiersze, bez samotnego slowa na koncu */
h1,h2,h3{text-wrap:balance}
p{margin:0 0 20px;text-wrap:pretty}
em{font-family:var(--serif);font-style:italic;font-size:1.08em}

/* Wyroznienie w tekscie: 500 w zieleni zamiast czarnego 700.
   Pogrubione zdanie ma sie odcinac, a nie robic z akapitu plamy. */
strong,b{font-weight:500;color:var(--green)}

.eyebrow{
  font:500 11px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--green-mid);
  margin:0 0 18px;display:flex;align-items:center;gap:12px;
}
.eyebrow::before{content:"";width:26px;height:1px;background:var(--green-mid);opacity:.5;flex:none}

/* ----- skala tekstu -----
   Cztery szczeble, kazdy o wyrazny krok od poprzedniego:
   lede (szeryf) > lead-p > p > small. Bez tego wszystko czyta sie jak jeden blok. */
.lede{
  font-size:clamp(21px,2.2vw,28px);line-height:1.38;color:var(--green);
  font-family:var(--serif);font-weight:400;font-variation-settings:"SOFT" 30,"opsz" 30;
  margin-bottom:28px;text-wrap:pretty;
}
.muted{color:var(--ink-soft)}
.small{font-size:15.5px;line-height:1.62}
.big{font-size:clamp(19px,1.7vw,21px);line-height:1.62}

/* pierwszy akapit po ledzie: pomost miedzy szeryfem a tekstem biezacym */
.lead-p{font-size:1.06em;line-height:1.66;color:var(--ink)}
/* inicjał */
.dropcap::first-letter{
  font-family:var(--serif);font-size:3.5em;line-height:.86;float:left;
  padding:6px 12px 0 0;color:var(--green);font-variation-settings:"SOFT" 40;
}

/* ---------- SKLAD AKAPITU ----------
   Justowanie w polszczyznie dziala tylko z dzieleniem wyrazow — bez niego
   robia sie rzeki bialych dziur. Ostatni wiersz zawsze do lewej. */
.text p,.narrow p{
  text-align:justify;
  text-align-last:left;
  hyphens:auto;
  -webkit-hyphens:auto;
  hyphenate-limit-chars:6 3 3;
}
/* karty oferty sa za waskie na justowanie — same dzielenie wyrazow */
.svc .card p{hyphens:auto;-webkit-hyphens:auto}
/* naglowki, ledy i cytaty zostaja na chorągiewce — justowanie psuje im rytm */
.text .lede,.text h1,.text h2,.text h3,blockquote,.eyebrow{
  text-align:left;hyphens:manual;
}
/* w waskiej kolumnie justowanie szkodzi bardziej niz pomaga */
@media (max-width:640px){
  .text p,.narrow p{text-align:left;text-align-last:left}
}

/* ---------- KOLUMNA TEKSTU A ZDJECIA ----------
   W ukladzie dwukolumnowym tekst ma wypelnic swoja kolumne, a nie konczyc sie
   w przypadkowym miejscu przed krawedzia zdjecia obok. */
.grid2 .text{max-width:none}
/* Zdjecie obok tekstu nie moze byc dwa razy wyzsze od niego — inaczej pod
   akapitami zostaje pusty slup. Wysokosc zwiazana z kolumna, kadr docina cover. */
.grid2 .fr img{height:clamp(360px,44vw,560px);object-fit:cover;width:100%}
.grid2.top{align-items:start}
/* luk i pas koloru licza sie wzgledem nowej wysokosci */
.grid2 .fr-arch img{border-radius:50% 50% 12px 12px / 22% 22% 2% 2%}
/* odstep miedzy blokiem tekstu a pasem zdjec pod nim */
.text + .figrow,.figrow + .text{margin-top:clamp(30px,4vw,52px)}
/* kolejne bloki tekstu w tej samej sekcji nie moga sie zlewac */
.text + .text{margin-top:clamp(26px,3.4vw,44px)}

blockquote{
  margin:38px 0;padding:0;border:0;
  font-family:var(--serif);font-size:clamp(24px,3vw,34px);line-height:1.25;color:var(--green);
  font-variation-settings:"SOFT" 40,"opsz" 60;
}
blockquote::before{content:"„";opacity:.35}
blockquote::after{content:"”";opacity:.35}
blockquote cite{
  display:block;margin-top:16px;font:400 13px/1 var(--sans);letter-spacing:.2em;
  text-transform:uppercase;color:var(--green-mid);font-style:normal;
}

ul.plain{list-style:none;padding:0}
ul.plain li{padding-left:28px;position:relative;margin-bottom:13px}
ul.plain li::before{
  content:"";position:absolute;left:0;top:.74em;width:14px;height:1.5px;background:var(--green-mid);opacity:.65;
}

/* ---------- ANIMACJE ---------- */
[data-anim]{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
[data-anim].in{opacity:1;transform:none}
[data-anim="fade"]{transform:none}
[data-anim="left"]{transform:translateX(-32px)}
[data-anim="right"]{transform:translateX(32px)}
[data-anim="scale"]{transform:scale(.955)}
[data-anim].in{transform:none}
[data-delay="1"]{transition-delay:.09s}
[data-delay="2"]{transition-delay:.18s}
[data-delay="3"]{transition-delay:.27s}
[data-delay="4"]{transition-delay:.36s}
[data-delay="5"]{transition-delay:.45s}

/* odsłanianie zdjęcia zasłoną */
.reveal{position:relative;overflow:hidden}
.reveal::after{
  content:"";position:absolute;inset:0;background:var(--cream-pale);
  transform:scaleY(1);transform-origin:bottom;transition:transform 1.05s var(--ease);
}
.reveal.in::after{transform:scaleY(0)}
.reveal img{transform:scale(1.06);transition:transform 1.5s var(--ease)}
.reveal.in img{transform:scale(1)}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.01ms!important}
  [data-anim]{opacity:1;transform:none}
  .reveal::after{display:none}
  .reveal img{transform:none}
}

/* ---------- HERO ---------- */
.hero{padding:0;position:relative}
.hero-media{position:relative;overflow:hidden}
.hero-media picture{display:block}
/* wyzszy kadr niz wczesniej: postacie dostaja pion zamiast waskiego paska */
.hero-media img{width:100%;height:clamp(440px,76vh,760px);object-fit:cover;object-position:50% 26%}
@media (max-width:700px){
  /* na waskim ekranie zrodlo jest pionowe, wiec kadr prawie sie nie przycina */
  .hero-media img{height:clamp(460px,72vh,640px);object-position:50% 22%}
}
.hero-media::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to bottom,rgba(18,42,26,.30) 0%,rgba(18,42,26,0) 38%,rgba(18,42,26,.55) 100%);
}
.hero-over{
  position:absolute;left:0;right:0;bottom:clamp(28px,5vw,56px);z-index:2;color:var(--cream);
}
.hero-over h1{color:var(--cream);max-width:14ch;margin:0}
.hero-over .eyebrow{color:var(--cream);opacity:.85}
.hero-over .eyebrow::before{background:var(--cream)}
.hero-copy{padding:clamp(40px,6vw,72px) 0 0}

/* ---------- SIATKI ---------- */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4.5vw,64px);align-items:center}
.grid2.top{align-items:start}
.grid2.wide-left{grid-template-columns:1.15fr 1fr}
.grid2.wide-right{grid-template-columns:1fr 1.15fr}
.people{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,52px)}

/* ---------- OPRAWA ZDJĘĆ ---------- */
.fr{position:relative;display:block}
.fr img{width:100%;border-radius:12px;box-shadow:var(--shadow-m)}
/* ramka przesunięta */
.fr-offset::before{
  content:"";position:absolute;inset:0;border:1.5px solid var(--green);border-radius:12px;
  transform:translate(16px,16px);z-index:-1;opacity:.55;
}
/* łuk */
.fr-arch img{border-radius:50% 50% 12px 12px / 30% 30% 2% 2%}
/* pasek koloru za zdjęciem */
.fr-band::before{
  content:"";position:absolute;left:-26px;right:34%;top:34px;bottom:34px;
  background:var(--cream);border-radius:10px;z-index:-1;
}
.fr-caption{
  margin-top:14px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);
}

.figrow{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.figrow img{aspect-ratio:3/2;object-fit:cover;width:100%;border-radius:10px}
.figrow .reveal{border-radius:10px}

/* pas zdjęć pełna szerokość */
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:clamp(30px,5vw,56px)}
.strip img{aspect-ratio:1;object-fit:cover;width:100%;border-radius:8px}

/* ---------- PASY ---------- */
.band{background:var(--cream-pale)}
.band-wash{background:var(--green-wash)}
.band-dark{background:var(--green);color:var(--cream)}
.band-dark h1,.band-dark h2,.band-dark h3,.band-dark .lede{color:var(--cream)}
.band-dark .eyebrow{color:var(--cream);opacity:.8}
.band-dark .eyebrow::before{background:var(--cream)}
.band-dark .muted{color:var(--cream);opacity:.75}
.band-dark a{color:var(--cream)}
.band-dark blockquote{color:var(--cream)}
.band-dark ul.plain li::before{background:var(--cream);opacity:.6}
.band-dark .btn.ghost{color:var(--cream);border-color:rgba(231,227,190,.5)}
.band-dark .btn.ghost:hover{background:var(--cream);color:var(--green)}

/* ---------- KARTY OSÓB ---------- */
.person{
  background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;
  box-shadow:var(--shadow-s);display:flex;flex-direction:column;
  transition:transform .5s var(--ease),box-shadow .5s var(--ease);
}
.person:hover{transform:translateY(-6px);box-shadow:var(--shadow-l)}
.person .ph{overflow:hidden}
.person .ph img{aspect-ratio:4/5;object-fit:cover;width:100%;transition:transform .9s var(--ease)}
.person:hover .ph img{transform:scale(1.045)}
.person .inner{padding:clamp(22px,3vw,32px);flex:1;display:flex;flex-direction:column}
.person h3{margin:0 0 6px;font-size:clamp(26px,3vw,34px)}
.person .role{
  font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--green-mid);
  margin:0 0 18px;font-weight:500;
}
.person p{color:var(--ink-soft);font-size:16.5px}
.person .more{
  margin-top:auto;padding-top:18px;font-weight:500;text-decoration:none;font-size:15px;
  letter-spacing:.02em;display:inline-flex;align-items:center;gap:8px;
}
.person .more span{transition:transform .35s var(--ease)}
.person:hover .more span{transform:translateX(6px)}

/* ---------- KAFLE USŁUG ---------- */
.svc{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin-top:34px}
.svc .card{
  background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px 26px;
  transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .45s;
}
.svc .card:hover{transform:translateY(-4px);box-shadow:var(--shadow-m);border-color:var(--green-mid)}
.svc .card h4{margin:0 0 10px;font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.01em}
.svc .card p{margin:0;font-size:15.5px;color:var(--ink-soft);line-height:1.62}
.svc .card .who{
  display:block;margin-top:14px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--green-mid);
}

/* ---------- LICZBY ---------- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px;margin-top:36px}
.stat{border-top:1.5px solid var(--green);padding-top:18px}
.stat b{
  display:block;font-family:var(--serif);font-weight:400;font-size:clamp(38px,4.6vw,58px);
  line-height:1;color:var(--green);font-variation-settings:"SOFT" 30;
}
.stat span{display:block;margin-top:10px;font-size:14.5px;color:var(--ink-soft);line-height:1.5}
.band-dark .stat{border-top-color:rgba(231,227,190,.55)}
.band-dark .stat b{color:var(--cream)}
.band-dark .stat span{color:var(--cream);opacity:.72}
.band-dark .note{background:rgba(252,251,244,.06);border-color:rgba(231,227,190,.2)}
.band-dark .price{border-top-color:var(--cream)}
.band-dark .price .row{border-bottom-color:rgba(231,227,190,.2)}
.band-dark .price .row .l strong,.band-dark .price .row .r{color:var(--cream)}
.band-dark .price .row .l span{color:var(--cream);opacity:.7}
.band-dark details{border-bottom-color:rgba(231,227,190,.2)}
.band-dark details summary{color:var(--cream)}
.band-dark details .body{color:var(--cream);opacity:.8}

/* ---------- CENNIK ---------- */
.price{border-top:1.5px solid var(--green);margin-top:10px}
.price .row{
  display:flex;justify-content:space-between;gap:26px;align-items:baseline;
  padding:22px 0;border-bottom:1px solid var(--line);transition:padding-left .35s var(--ease);
}
.price .row:hover{padding-left:10px}
.price .row .l strong{
  display:block;font-size:clamp(19px,2vw,23px);font-family:var(--serif);font-weight:400;color:var(--green);
}
.price .row .l span{font-size:14.5px;color:var(--ink-soft)}
.price .row .r{font-size:clamp(20px,2vw,25px);white-space:nowrap;font-family:var(--serif);color:var(--green)}

/* ---------- FAQ ---------- */
details{border-bottom:1px solid var(--line);padding:20px 0}
details summary{
  cursor:pointer;font-weight:400;font-size:clamp(18px,2vw,21px);list-style:none;font-family:var(--serif);
  display:flex;justify-content:space-between;gap:20px;align-items:baseline;color:var(--green);
}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"+";color:var(--green-mid);font-size:24px;line-height:1;transition:transform .3s}
details[open] summary::after{content:"–"}
details .body{padding-top:14px;color:var(--ink-soft);max-width:var(--text);animation:fadein .5s var(--ease)}
details .body p:last-child{margin-bottom:0}
@keyframes fadein{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* ---------- DOWODY ---------- */
.ev{border-top:1px solid var(--line);padding:30px 0}
.ev:first-of-type{border-top:1.5px solid var(--green)}
.ev h3{margin:0 0 10px;font-size:clamp(23px,2.6vw,30px)}
.ev .tag{
  display:inline-block;font:500 10.5px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;
  padding:7px 13px;border-radius:999px;margin-bottom:14px;background:var(--green);color:var(--cream);
}
.ev p{margin:0 0 10px;color:var(--ink-soft);font-size:16.5px}
.ev .src{font-size:13.5px;color:var(--ink-faint);letter-spacing:.03em}
.ev .num{
  font-family:var(--serif);font-size:clamp(30px,4vw,44px);color:var(--green);line-height:1;
  display:block;margin-bottom:10px;font-variation-settings:"SOFT" 30;
}

/* ---------- PUDEŁKA ---------- */
.note{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:clamp(24px,3vw,34px);box-shadow:var(--shadow-s)}
.note p:last-child{margin-bottom:0}

/* ---------- PRZYCISKI ---------- */
.btn{
  display:inline-flex;align-items:center;gap:10px;background:var(--green);color:var(--cream);
  text-decoration:none;padding:16px 34px;border-radius:999px;font-weight:500;font-size:16px;
  letter-spacing:.02em;transition:transform .35s var(--ease),background .35s,box-shadow .35s;
  border:none;cursor:pointer;font-family:var(--sans);
}
.btn:hover{background:var(--green-mid);color:var(--cream);transform:translateY(-3px);box-shadow:var(--shadow-m)}
.btn.ghost{background:transparent;color:var(--green);border:1.5px solid var(--green)}
.btn.ghost:hover{background:var(--green);color:var(--cream)}
.btns{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}

/* ---------- FORMULARZ REZERWACJI ---------- */
.book{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:clamp(26px,3.4vw,42px);box-shadow:var(--shadow-m)}
.book .fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.book label{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--green-mid);margin-bottom:8px;font-weight:500}
.book input,.book select,.book textarea{
  width:100%;font:300 16px/1.5 var(--sans);color:var(--ink);background:var(--paper);
  border:1px solid var(--line);border-radius:10px;padding:13px 15px;transition:border-color .3s,box-shadow .3s;
}
.book input:focus,.book select:focus,.book textarea:focus{
  outline:none;border-color:var(--green-mid);box-shadow:0 0 0 3px rgba(56,92,66,.10);
}
.book .full{grid-column:1 / -1}
.book textarea{min-height:110px;resize:vertical}
.book .hint{font-size:13.5px;color:var(--ink-faint);margin:16px 0 0}

/* ---------- KONTAKT / STOPKA ---------- */
.contact{background:var(--green);color:var(--cream)}
.contact h2,.contact h3{color:var(--cream)}
.contact .eyebrow{color:var(--cream);opacity:.8}
.contact .eyebrow::before{background:var(--cream)}
.contact a{color:var(--cream)}
.contact .lede{color:var(--cream);opacity:.92}
.contact .muted{color:var(--cream);opacity:.72}
.contact .btn{background:var(--cream);color:var(--green)}
.contact .btn:hover{background:#fff;color:var(--green)}
.contact .book{background:rgba(252,251,244,.06);border-color:rgba(231,227,190,.22)}
.contact .book label{color:var(--cream);opacity:.8}
.contact .book input,.contact .book select,.contact .book textarea{
  background:rgba(252,251,244,.07);border-color:rgba(231,227,190,.26);color:var(--cream);
}
.contact .book input::placeholder,.contact .book textarea::placeholder{color:rgba(231,227,190,.45)}
.contact .book .hint{color:rgba(231,227,190,.6)}
.contact .book .btn{background:var(--cream);color:var(--green)}

footer{background:var(--green-deep);color:rgba(231,227,190,.6);font-size:14px;padding:44px 0}
footer .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center}
footer a{color:rgba(231,227,190,.6);text-decoration:none;transition:color .3s}
footer a:hover{color:var(--cream)}
footer .fmark{display:flex;align-items:center;gap:12px}
footer .fmark img{width:30px;height:30px;opacity:.8}

/* ---------- MOBILE ---------- */
@media (max-width:900px){
  .grid2,.grid2.wide-left,.grid2.wide-right,.people{grid-template-columns:1fr;gap:30px}
  .figrow{grid-template-columns:1fr 1fr}
  .strip{grid-template-columns:repeat(2,1fr)}
  .book .fields{grid-template-columns:1fr}
  .nav ul{gap:18px}
  .nav ul li.hide-sm{display:none}
  .fr-band::before{display:none}
  .fr-offset::before{transform:translate(10px,10px)}
}
@media (max-width:540px){
  body{font-size:17px}
  .figrow{grid-template-columns:1fr}
  .nav .wrap{height:64px;gap:12px}
  .brand .mark{width:32px;height:32px}
  .brand .wm{height:16px}
  .nav ul{gap:14px}
  .nav ul li.hide-xs{display:none}
  .nav .cta{padding:9px 16px;font-size:13px;white-space:nowrap}
  .dropcap::first-letter{font-size:3em}
}
@media print{
  .nav,.contact,footer,.btns{display:none}
  body{background:#fff}
  [data-anim]{opacity:1;transform:none}
}
