/* ===========================================================
   Vysichka Studio — shared styles
   Palette & type from data/site.json (brand guide)
   =========================================================== */
:root{
  --linen:#F4EEE2; --linen-2:#EFE7D8; --paper:#FCFAF5; --sand:#EBE3D6;
  --ink:#241F1B; --ink-2:#4A443C; --stone:#8A8175;
  --red:#A8443A; --red-d:#8C362E; --sage:#7E8C6B; --gold:#B99542; --rose:#C08D86;
  --hair:#DFD5C2;
  --shadow:0 1px 2px rgba(36,31,27,.04), 0 12px 32px rgba(36,31,27,.07);
  --shadow-lg:0 2px 6px rgba(36,31,27,.06), 0 24px 60px rgba(36,31,27,.11);
  --serif:"Fraunces","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --w:1180px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:82px;}
body{background:var(--linen);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.14;letter-spacing:-.01em;}
img{max-width:100%;display:block;}
a{color:var(--red);text-decoration:none;}
a:hover{text-decoration:underline;}
svg{display:block;}
.wrap{max-width:var(--w);margin:0 auto;padding:0 28px;}
::selection{background:rgba(168,68,58,.18);}
.muted{color:var(--stone);}
.center{text-align:center;}

/* ---------- Header ---------- */
.topbar{position:sticky;top:0;z-index:60;background:rgba(244,238,226,.85);backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--hair);}
.tin{max-width:var(--w);margin:0 auto;padding:13px 28px;display:flex;align-items:center;gap:22px;}
.brand{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-weight:600;font-size:18px;color:var(--ink);letter-spacing:.2px;}
.brand:hover{text-decoration:none;}
.brand img{width:26px;height:26px;flex:none;}
nav.main{display:flex;align-items:center;gap:28px;margin-left:auto;}
nav.main a{font-size:14.5px;font-weight:500;color:var(--ink-2);letter-spacing:.2px;}
nav.main a:hover,nav.main a.active{color:var(--red);text-decoration:none;}
.toolbar{display:flex;align-items:center;gap:14px;}
.lang{display:inline-flex;border:1px solid var(--hair);border-radius:100px;overflow:hidden;background:var(--paper);}
.lang button{background:none;border:0;cursor:pointer;font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.5px;padding:6px 11px;color:var(--stone);}
.lang button.on{background:var(--red);color:#fff;}
.iconbtn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;color:var(--ink);border:1px solid transparent;}
.iconbtn:hover{background:var(--paper);border-color:var(--hair);text-decoration:none;}
.iconbtn svg{width:20px;height:20px;}
.burger{display:none;background:none;border:0;cursor:pointer;padding:8px;margin-left:4px;}
.burger span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;border-radius:2px;}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 28px;border-radius:100px;font-weight:600;font-size:15.5px;border:0;cursor:pointer;font-family:var(--sans);transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;text-align:center;}
.btn:hover{text-decoration:none;transform:translateY(-2px);}
.btn-p{background:var(--red);color:#fff;box-shadow:0 8px 20px rgba(168,68,58,.22);}
.btn-p:hover{background:var(--red-d);box-shadow:0 12px 28px rgba(168,68,58,.3);}
.btn-s{background:var(--paper);color:var(--ink);border:1px solid var(--hair);box-shadow:var(--shadow);}
.btn-s:hover{border-color:var(--stone);}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--ink);}
.btn-ghost:hover{background:var(--ink);color:var(--paper);}
.btn.small{padding:11px 18px;font-size:14px;}
.btn.block{width:100%;}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--hair);}
.hero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;padding:74px 0 70px;}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(820px 380px at 12% 6%,rgba(168,68,58,.07),transparent 60%),radial-gradient(680px 360px at 96% 96%,rgba(126,140,107,.12),transparent 60%);}
.hero .col{position:relative;}
.kicker{display:inline-block;font-size:12px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:var(--stone);margin-bottom:20px;}
.hero h1{font-size:clamp(38px,5vw,60px);margin-bottom:22px;font-weight:600;}
.hero h1 em{font-style:italic;color:var(--red);}
.hero p.lede{font-size:clamp(17px,1.7vw,19.5px);color:var(--ink-2);max-width:520px;margin-bottom:32px;}
.hero-ctas{display:flex;gap:13px;flex-wrap:wrap;}
.hero-art{position:relative;}
.hero-art img{width:100%;border-radius:20px;box-shadow:var(--shadow-lg);border:1px solid var(--hair);}

/* ---------- Sections ---------- */
section{padding:80px 0;}
.sec-head{margin-bottom:44px;}
.sec-head.center{text-align:center;}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:var(--stone);margin-bottom:12px;display:block;}
.stitle{font-size:clamp(28px,3.4vw,40px);margin-bottom:14px;}
.ssub{color:var(--ink-2);max-width:560px;font-size:17px;}
.center .ssub{margin-left:auto;margin-right:auto;}
.band{background:var(--linen-2);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);}
.band-paper{background:var(--paper);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);}

/* ---------- Product grid & cards ---------- */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.pgrid.four{grid-template-columns:repeat(4,1fr);gap:22px;}
.pcard{background:var(--paper);border:1px solid var(--hair);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;}
.pcard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}
.pcard .thumb{position:relative;aspect-ratio:4/3;background:var(--sand) center/cover;overflow:hidden;}
.pcard .thumb img{width:100%;height:100%;object-fit:cover;}
.pcard .tag{position:absolute;top:12px;left:12px;background:var(--paper);border:1px solid var(--hair);color:var(--ink-2);font-size:11.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:5px 11px;border-radius:100px;}
.pbody{padding:20px 20px 22px;display:flex;flex-direction:column;flex:1;}
.pbody h3{font-size:19px;margin-bottom:5px;}
.pbody .sub{font-family:var(--serif);font-style:italic;color:var(--stone);font-size:14.5px;margin-bottom:12px;line-height:1.4;}
.pbody .desc{font-size:14.5px;color:var(--ink-2);margin-bottom:16px;}
.pmeta{display:flex;align-items:baseline;justify-content:space-between;margin-top:auto;margin-bottom:14px;}
.price{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ink);}
.pages{font-size:13px;color:var(--stone);}
.pbtns{display:flex;flex-direction:column;gap:9px;}
.pbtns button{font:inherit;}
.collnote{grid-column:1/-1;}

/* ---------- Cart (shop page) ---------- */
.cart-badge{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14.5px;color:var(--ink-2);}
.cart-badge svg{display:inline-block;vertical-align:middle;flex:none;}
.cart-panel{text-align:center;}
.cart-items-list{margin-bottom:16px;}
.cart-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--hair);font-size:14.5px;gap:12px;}
.cart-row:last-child{border-bottom:0;}
.cart-row-name{flex:1;text-align:left;color:var(--ink);}
.cart-row-right{display:flex;align-items:center;gap:10px;}
.cart-row-price{font-weight:600;color:var(--ink);font-family:var(--serif);}
.cart-row-remove{background:none;border:0;cursor:pointer;color:var(--stone);font-size:18px;padding:2px 6px;border-radius:50%;line-height:1;}
.cart-row-remove:hover{color:var(--red);background:rgba(168,68,58,.08);}
.cart-total{font-size:15.5px;border-top:2px solid var(--hair);border-bottom:0;padding-top:12px;margin-top:4px;}
.cart-checkout-row{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;}
.cart-email-input{padding:12px 16px;border:1px solid var(--hair);border-radius:12px;background:#fff;font-family:var(--sans);font-size:16px;color:var(--ink);max-width:340px;width:100%;transition:border-color .16s,box-shadow .16s;}
.cart-email-input:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 4px rgba(168,68,58,.10);}

/* --- Cart toast --- */
.cart-toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--paper);border:1px solid var(--hair);color:var(--ink);font-size:15px;font-weight:600;padding:14px 24px;border-radius:100px;box-shadow:var(--shadow-lg);z-index:200;opacity:0;transition:opacity .22s,transform .22s;display:inline-flex;align-items:center;gap:9px;white-space:nowrap;}
.cart-toast svg{display:inline-block;flex:none;}
.cart-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}

.modal{position:fixed;inset:0;z-index:100;background:rgba(36,31,27,.55);display:none;align-items:center;justify-content:center;padding:20px;}
.modal.open{display:flex;}
.modal-backdrop{position:absolute;inset:0;}
.modal-panel{position:relative;width:min(920px,100%);max-height:min(88vh,900px);overflow:auto;background:var(--paper);border:1px solid var(--hair);border-radius:24px;box-shadow:var(--shadow-lg);}
.modal-close{position:absolute;right:16px;top:16px;border:0;background:var(--paper);width:40px;height:40px;border-radius:50%;font-size:24px;cursor:pointer;color:var(--ink);box-shadow:var(--shadow);}
.modal-body{padding:28px;}
.detail-surface{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;}
.detail-media img{width:100%;border-radius:18px;border:1px solid var(--hair);box-shadow:var(--shadow);}
.detail-copy h3{font-size:clamp(24px,2.4vw,32px);margin-bottom:8px;}
.detail-copy .sub{margin-bottom:12px;}
.detail-text{color:var(--ink-2);margin-bottom:14px;}
.detail-list{list-style:none;display:grid;gap:8px;margin-bottom:16px;}
.detail-list li{padding-left:16px;position:relative;color:var(--ink-2);}
.detail-list li:before{content:"•";position:absolute;left:0;color:var(--red);font-weight:700;}
.detail-meta{display:flex;gap:18px;align-items:center;margin-bottom:16px;flex-wrap:wrap;}
.detail-actions{max-width:320px;}

/* ---------- Collection header rows ---------- */
.coll-block{margin-bottom:64px;}
.coll-block:last-child{margin-bottom:0;}
.coll-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-bottom:1px solid var(--hair);padding-bottom:16px;margin-bottom:28px;flex-wrap:wrap;}
.coll-head h2{font-size:clamp(24px,3vw,32px);}
.coll-head p{color:var(--ink-2);font-size:15px;max-width:520px;margin-top:6px;}

/* ---------- Feature trio ---------- */
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.fcard{background:var(--paper);border:1px solid var(--hair);border-radius:18px;padding:34px 30px;box-shadow:var(--shadow);}
.fcard .fico{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.fcard .fico svg{width:25px;height:25px;}
.fico.r{background:rgba(168,68,58,.10);} .fico.s{background:rgba(126,140,107,.14);} .fico.g{background:rgba(185,149,66,.14);}
.fcard h3{font-size:20px;margin-bottom:9px;}
.fcard p{color:var(--ink-2);font-size:15.5px;}

/* ---------- Collections teaser (home) ---------- */
.colls{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.coll-link{display:block;background:var(--paper);border:1px solid var(--hair);border-radius:16px;padding:26px 22px;color:var(--ink);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s,border-color .2s;}
.coll-link:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);text-decoration:none;border-color:var(--stone);}
.coll-link h3{font-size:18px;margin-bottom:8px;}
.coll-link p{font-size:14px;color:var(--ink-2);}
.coll-link .arw{color:var(--red);font-weight:700;margin-top:12px;display:inline-block;}

/* ---------- Story / about ---------- */
.story{display:grid;grid-template-columns:1fr 1.35fr;gap:56px;align-items:center;}
.story-art{display:flex;align-items:center;justify-content:center;}
.story-art img{width:180px;height:180px;opacity:.95;}
.story h2{font-size:clamp(26px,3.2vw,36px);margin-bottom:20px;}
.story p{color:var(--ink-2);font-size:17.5px;margin-bottom:15px;}
.pull{font-family:var(--serif);font-style:italic;font-size:21px;color:var(--red);border-left:3px solid var(--red);padding-left:20px;margin-top:24px;}

/* ---------- Rich text (about/faq/legal) ---------- */
.prose{max-width:760px;margin:0 auto;}
.prose h2{font-size:26px;margin:36px 0 12px;}
.prose h2:first-child{margin-top:0;}
.prose h3{font-size:17px;font-family:var(--sans);font-weight:700;margin:24px 0 6px;color:var(--ink);}
.prose p{color:var(--ink-2);margin-bottom:14px;}
.prose ul{margin:0 0 16px 20px;color:var(--ink-2);}
.prose li{margin-bottom:8px;}
.prose blockquote{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--red);border-left:3px solid var(--red);padding-left:20px;margin:22px 0;}
.card-box{background:var(--paper);border:1px solid var(--hair);border-radius:20px;padding:40px 44px;box-shadow:var(--shadow);}

/* ---------- Socials ---------- */
.socials{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.soc{display:flex;flex-direction:column;align-items:center;gap:13px;background:var(--paper);border:1px solid var(--hair);border-radius:18px;padding:30px 18px;box-shadow:var(--shadow);color:var(--ink);transition:transform .2s,box-shadow .2s,border-color .2s;}
.soc:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);text-decoration:none;border-color:var(--stone);}
.soc .sic{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.soc .sic svg{width:23px;height:23px;}
.soc b{font-size:16px;} .soc span{font-size:13.5px;color:var(--stone);text-align:center;}

/* ---------- Contact form ---------- */
.cbox{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start;}
.field{margin-bottom:16px;}
.field label{display:block;font-size:14px;font-weight:700;margin-bottom:7px;color:var(--ink);}
.field input,.field textarea{width:100%;padding:14px 16px;border:1px solid var(--hair);border-radius:12px;background:#fff;font-family:var(--sans);font-size:16px;color:var(--ink);transition:border-color .16s,box-shadow .16s;}
.field input:focus,.field textarea:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 4px rgba(168,68,58,.10);}
.field textarea{min-height:130px;resize:vertical;}
.hp{position:absolute;left:-9999px;}
.formnote{font-size:13.5px;color:var(--stone);margin-top:12px;}
.thanks{display:none;text-align:center;padding:24px 20px;background:var(--paper);border:1px solid var(--hair);border-radius:18px;box-shadow:var(--shadow);}
.thanks.show{display:block;}
.thanks .tick{width:56px;height:56px;border-radius:50%;background:rgba(126,140,107,.16);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
.thanks h3{font-size:22px;margin-bottom:8px;}
.thanks p{color:var(--ink-2);}
form.sent{display:none;}
.cmail{display:inline-flex;align-items:center;gap:9px;font-weight:700;color:var(--red);font-size:16px;}

/* ---------- FAQ ---------- */
.faq-item{border-bottom:1px solid var(--hair);}
.faq-q{width:100%;text-align:left;background:none;border:0;cursor:pointer;font-family:var(--sans);font-size:17px;font-weight:600;color:var(--ink);padding:20px 40px 20px 0;position:relative;}
.faq-q::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:24px;color:var(--red);font-weight:400;}
.faq-item.open .faq-q::after{content:"–";}
.faq-a{max-height:0;overflow:hidden;transition:max-height .28s ease;}
.faq-a .inner{padding:0 0 20px;color:var(--ink-2);font-size:15.5px;}

/* ---------- Page hero (inner pages) ---------- */
.phead{text-align:center;padding:64px 0 8px;}
.phead h1{font-size:clamp(32px,4vw,48px);margin-bottom:14px;}
.phead p{color:var(--ink-2);max-width:560px;margin:0 auto;font-size:17.5px;}

/* ---------- Footer ---------- */
footer{background:var(--linen-2);border-top:1px solid var(--hair);padding:60px 0 40px;margin-top:20px;}
.fcols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px;margin-bottom:44px;}
.fbrand{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-weight:600;font-size:17px;margin-bottom:14px;}
.fbrand img{width:24px;height:24px;}
.fcol p{font-size:14.5px;color:var(--ink-2);max-width:280px;}
.fcol h4{font-size:12.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--stone);margin-bottom:16px;}
.fcol ul{list-style:none;}
.fcol li{margin-bottom:10px;}
.fcol a{font-size:14.5px;color:var(--ink-2);font-weight:500;}
.fcol a:hover{color:var(--red);text-decoration:none;}
.fbot{border-top:1px solid var(--hair);padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;}
.fbot p{font-size:13.5px;color:var(--stone);}
.fbot .ua{color:var(--red);}
.fsoc{display:flex;gap:12px;}
.fsoc a{width:36px;height:36px;border-radius:50%;border:1px solid var(--hair);display:flex;align-items:center;justify-content:center;color:var(--ink-2);}
.fsoc a:hover{border-color:var(--red);color:var(--red);text-decoration:none;}
.fsoc svg{width:18px;height:18px;}

/* ---------- Admin dashboard ---------- */
.admin-shell{padding-top:20px;}
.admin-card{max-width:520px;}
.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;}
.account-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;margin-top:24px;}
.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:20px;}
.admin-form .field{margin-bottom:14px;}
.admin-form input,.admin-form textarea,.admin-form select{width:100%;}
.admin-form textarea{min-height:100px;}
.admin-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;}
.admin-list{display:grid;gap:12px;}
.admin-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--hair);border-radius:14px;background:var(--paper);} 
.admin-item-actions{display:flex;gap:8px;flex-wrap:wrap;}
.account-summary{display:grid;gap:12px;}
.summary-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 16px;border:1px solid var(--hair);border-radius:14px;background:var(--paper);}
.summary-item span{color:var(--ink-2);font-size:14.5px;text-align:right;max-width:240px;}
.checkbox-row{display:flex;align-items:center;gap:10px;padding:10px 0;color:var(--ink-2);font-size:15px;}
.checkbox-row input{width:auto;accent-color:var(--red);}
.consent-row{margin:6px 0 18px;flex-wrap:wrap;line-height:1.5;}
.consent-row a{color:var(--red);font-weight:600;}
.hidden{display:none !important;}

/* ---------- Auth / login / register ---------- */
.auth-shell{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center;}
.auth-panel{background:linear-gradient(135deg, rgba(255,255,255,.95), rgba(244,238,226,.95));border:1px solid var(--hair);border-radius:24px;padding:34px;box-shadow:var(--shadow);}
.auth-panel h2{margin-bottom:10px;font-size:clamp(24px,3vw,30px);}
.auth-panel p{color:var(--ink-2);margin-bottom:18px;}
.auth-tabs{display:flex;border:1px solid var(--hair);border-radius:100px;overflow:hidden;margin-bottom:22px;background:var(--paper);}
.auth-tabs button{flex:1;background:none;border:0;cursor:pointer;font-family:var(--sans);font-size:14px;font-weight:600;padding:10px 12px;color:var(--stone);}
.auth-tabs button.on{background:var(--red);color:#fff;}
.auth-note a{color:var(--red);}
.formnote.error{color:var(--red);}
.formnote.ok{color:var(--ink);}
.auth-illustration{background:var(--paper);border:1px solid var(--hair);border-radius:24px;padding:28px;box-shadow:var(--shadow);}
.auth-illustration .mark{width:72px;height:72px;border-radius:20px;background:rgba(168,68,58,.11);display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.auth-illustration .mark svg{width:34px;height:34px;color:var(--red);} 
.auth-illustration ul{list-style:none;display:grid;gap:10px;margin-top:18px;}
.auth-illustration li{color:var(--ink-2);padding-left:18px;position:relative;}
.auth-illustration li:before{content:"•";position:absolute;left:0;color:var(--red);font-weight:700;}
.auth-note{margin-top:12px;font-size:14px;color:var(--stone);} 
.auth-inline{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.auth-inline .btn{margin-top:0;}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
  .pgrid,.pgrid.four{grid-template-columns:repeat(2,1fr);}
  .colls{grid-template-columns:repeat(2,1fr);}
  .socials{grid-template-columns:repeat(2,1fr);}
  .fcols{grid-template-columns:1fr 1fr;gap:28px;}
  .admin-grid{grid-template-columns:1fr;}
  .auth-shell{grid-template-columns:1fr;}
}
@media (max-width:860px){
  .hero-in{grid-template-columns:1fr;gap:32px;padding:56px 0 52px;}
  .hero-art{order:-1;max-width:440px;}
  .story{grid-template-columns:1fr;gap:32px;text-align:center;}
  .pull{border-left:0;border-top:3px solid var(--red);padding:18px 0 0;margin-top:22px;}
  .trio{grid-template-columns:1fr;}
  .cbox{grid-template-columns:1fr;gap:30px;}
  nav.main{position:fixed;inset:63px 0 auto 0;flex-direction:column;align-items:stretch;background:var(--paper);border-bottom:1px solid var(--hair);padding:16px 28px 22px;gap:2px;transform:translateY(-10px);opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;box-shadow:var(--shadow);margin-left:0;}
  nav.main.open{opacity:1;transform:translateY(0);pointer-events:auto;}
  nav.main a{padding:12px 0;font-size:16px;border-bottom:1px solid var(--hair);}
  nav.main a:last-child{border-bottom:0;}
  .burger{display:block;}
  .tin{gap:12px;}
  .brand{margin-right:auto;}
}
@media (max-width:560px){
  .pgrid,.pgrid.four,.colls,.socials{grid-template-columns:1fr;}
  .fcols{grid-template-columns:1fr;}
  section{padding:56px 0;}
}
