/*
Theme Name: explantdoor
Version: 1.0.0
Text Domain: kit
*/

@font-face { font-family: "Hedvig Letters Serif"; src: url(fonts/display-hedvig-letters-serif-400.woff2) format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Mulish"; src: url(fonts/mulish-400.woff2) format("woff2"); font-weight: 300 900; font-display: swap; }
@font-face { font-family: "Mulish"; src: url(fonts/mulish-400i.woff2) format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "Reenie Beanie"; src: url(fonts/reenie-beanie-400.woff2) format("woff2"); font-weight: 400; font-display: swap; }

:root {
  --honey: #e8a33d;
  --honey-soft: #f6d79a;
  --clay: #c8623f;
  --sage: #8fb06a;
  --sage-soft: #dfe9cf;
  --linen: #fbf3e4;
  --linen-2: #f4e6cc;
  --wood: #8a5a36;
  --wood-dark: #5e3b22;
  --ink: #2b211b;
  --gap: clamp(20px, 3vw, 40px);
  --wide: 1280px;
  --serif: "Hedvig Letters Serif", Georgia, serif;
  --sans: "Mulish", system-ui, sans-serif;
  --hand: "Reenie Beanie", "Bradley Hand", cursive;
  --fx-accent: #c8623f;
  --weave: repeating-linear-gradient(0deg, rgba(138,90,54,.05) 0 1px, transparent 1px 4px), repeating-linear-gradient(90deg, rgba(138,90,54,.05) 0 1px, transparent 1px 4px);
}

body { font-family: var(--sans); font-size: 18px; line-height: 1.65; color: var(--ink); background: var(--linen); background-image: var(--weave); }
a { color: inherit; }
h1, h2, h3 { font-family: var(--serif); font-weight: 400; line-height: 1.08; margin: 0 0 .45em; letter-spacing: -.01em; }
h2 { font-size: clamp(32px, 4vw, 54px); }
.hand { font-family: var(--hand); font-size: 1.6em; line-height: 1.05; color: var(--clay); }
.kicker { margin: 0 0 10px; }
.sample { display: inline-block; font-size: 12px; font-weight: 800; letter-spacing: .04em; background: var(--honey-soft); color: var(--wood-dark); padding: 2px 8px; border-radius: 3px; }
p { color: color-mix(in srgb, var(--ink) 82%, transparent); }

.btn, .wp-block-button__link { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 12px 26px; border-radius: 22px 22px 6px 6px; background: var(--clay); color: #fff; font: 800 17px var(--sans); text-decoration: none; border: 0; cursor: pointer; box-shadow: 0 10px 24px -10px rgba(200,98,63,.7), inset 0 -3px 0 rgba(0,0,0,.12); transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.btn:hover { transform: translateY(-2px); background: #b4532f; box-shadow: 0 16px 30px -12px rgba(200,98,63,.8); }
.btn-quiet, .is-quiet .wp-block-button__link { background: transparent; color: var(--ink); box-shadow: inset 0 0 0 2px var(--ink); }
.btn-quiet:hover { background: var(--ink); color: var(--linen); }

/* Header */
.masthead { background: color-mix(in srgb, var(--linen) 92%, transparent); backdrop-filter: blur(8px); border-bottom: 1px solid rgba(138,90,54,.25); transition: transform .35s ease; }
.masthead-in { max-width: var(--wide); margin: 0 auto; padding: 14px var(--gap); min-height: 74px; }
.brand-name { font-family: var(--serif); font-size: clamp(20px, 2vw, 26px); color: var(--ink); }
.brand-name::before { content: ""; display: inline-block; width: 18px; height: 26px; margin-right: 10px; vertical-align: -4px; border-radius: 9px 9px 2px 2px; background: var(--honey); box-shadow: inset -5px 0 0 var(--wood); }
.nav-list a { font-weight: 700; font-size: 16px; padding: 8px 12px; border-radius: 14px 14px 4px 4px; }
.nav-list a:hover, .nav-list .current-menu-item > a { background: var(--sage-soft); }
.nav-list li:last-child a { background: var(--ink); color: var(--linen); }
.nav-toggle { background: var(--ink); color: var(--linen); border: 0; border-radius: 14px 14px 4px 4px; padding: 0 18px; font: 800 15px var(--sans); }
@media (max-width: 1080px) { .site-nav { background: var(--linen); padding: 10px var(--gap) 20px; border-bottom: 1px solid rgba(138,90,54,.25); } }

/* Porch hero */
.porch { padding: clamp(24px, 4vw, 54px) var(--gap) clamp(40px, 6vw, 80px); overflow: hidden; }
.porch-in { max-width: var(--wide); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 70px); align-items: center; }
.arch { position: relative; aspect-ratio: 4 / 4.6; max-height: 82vh; border-radius: 50% 50% 14px 14px / 34% 34% 14px 14px; overflow: hidden; background: var(--honey-soft);
  box-shadow: 0 0 0 14px var(--linen-2), 0 0 0 16px rgba(138,90,54,.35), 0 40px 60px -30px rgba(94,59,34,.55); }
.arch video, .arch img { width: 100%; height: 115%; object-fit: cover; will-change: transform; }
.arch-sill { position: absolute; left: -20px; right: -20px; bottom: 0; height: 18px; background: linear-gradient(var(--wood), var(--wood-dark)); }
.porch-copy h1 { font-size: clamp(44px, 5.4vw, 84px); margin: 6px 0 20px; }
.porch-hi { margin: 0; rotate: -3deg; }
.porch-lead { font-size: clamp(18px, 1.5vw, 21px); max-width: 26em; margin: 0 0 30px; }
.porch-act { display: flex; flex-wrap: wrap; gap: 14px; margin: 0; }
@media (max-width: 860px) {
  .porch-in { grid-template-columns: 1fr; }
  .arch { aspect-ratio: 4 / 3.4; max-height: 52vh; border-radius: 50% 50% 12px 12px / 40% 40% 12px 12px; box-shadow: 0 0 0 8px var(--linen-2), 0 0 0 10px rgba(138,90,54,.35); }
  .porch-copy h1 { font-size: clamp(38px, 10vw, 52px); }
}

/* Welcome mat */
.mat { padding: clamp(30px, 5vw, 60px) var(--gap); background: var(--sage); position: relative;
  background-image: repeating-linear-gradient(45deg, rgba(255,255,255,.12) 0 6px, transparent 6px 12px), repeating-linear-gradient(-45deg, rgba(43,33,27,.08) 0 6px, transparent 6px 12px); }
.mat::before, .mat::after { content: ""; position: absolute; left: 0; right: 0; height: 10px; background: repeating-linear-gradient(90deg, var(--wood) 0 4px, transparent 4px 9px); opacity: .6; }
.mat::before { top: 0; } .mat::after { bottom: 0; }
.mat-line { max-width: 1100px; margin: 0 auto; text-align: center; color: var(--ink); font-size: clamp(30px, 3.6vw, 52px); }

/* Hall of rooms */
.hall { padding: clamp(60px, 8vw, 110px) var(--gap); background: linear-gradient(var(--linen), var(--linen-2)); }
.hall-in { max-width: var(--wide); margin: 0 auto; display: flex; flex-wrap: wrap; gap: clamp(20px, 3vw, 40px); align-items: end; }
.hall-h { width: 100%; }
.room-door { flex: var(--w) 1 240px; text-decoration: none; display: flex; flex-direction: column; gap: 10px; }
.rd-frame { position: relative; display: block; height: clamp(260px, 30vw, 380px); border-radius: 120px 120px 6px 6px; background: radial-gradient(80% 60% at 50% 40%, #fff6dc, var(--honey-soft)); box-shadow: inset 0 0 0 10px var(--linen), inset 0 0 0 12px rgba(138,90,54,.4); overflow: hidden; perspective: 900px; }
.rd-leaf { position: absolute; inset: 12px; border-radius: 108px 108px 2px 2px; transform-origin: left center; transition: transform .7s cubic-bezier(.2,.7,.2,1); background: var(--c); box-shadow: inset 0 0 0 8px rgba(255,255,255,.12), inset 18px 0 30px rgba(0,0,0,.12); }
.rd-leaf::before { content: ""; position: absolute; inset: 22% 16% 12%; border-radius: 80px 80px 4px 4px; box-shadow: inset 0 0 0 3px rgba(255,255,255,.22); }
.rd-knob { position: absolute; right: 14%; top: 56%; width: 14px; height: 14px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #fff2c7, #b98a3a); }
.room-door:hover .rd-leaf, .room-door:focus-visible .rd-leaf { transform: rotateY(-38deg); }
.c-honey { --c: var(--honey); } .c-sage { --c: var(--sage); } .c-clay { --c: var(--clay); }
.rd-t { font-family: var(--serif); font-size: clamp(24px, 2.4vw, 32px); }
.rd-x { opacity: .75; max-width: 22em; }

/* Kitchen table */
.table { padding: clamp(60px, 8vw, 110px) var(--gap); color: var(--linen);
  background: repeating-linear-gradient(90deg, transparent 0 180px, rgba(0,0,0,.18) 180px 182px), repeating-linear-gradient(2deg, rgba(255,255,255,.04) 0 2px, transparent 2px 9px), linear-gradient(180deg, var(--wood), var(--wood-dark)); }
.table-in { max-width: var(--wide); margin: 0 auto; }
.table h2 { color: var(--honey-soft); }
.notes { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: clamp(22px, 3vw, 40px); margin-top: 20px; }
.note { position: relative; display: grid; gap: 10px; align-content: start; min-height: 280px; padding: 30px 26px 26px; text-decoration: none; color: var(--ink); background: #fffaf0; rotate: var(--r); box-shadow: 0 22px 30px -18px rgba(0,0,0,.6);
  background-image: repeating-linear-gradient(180deg, transparent 0 29px, rgba(143,176,106,.35) 29px 30px); transition: rotate .4s ease, transform .4s ease; }
.note::before { content: ""; position: absolute; top: -12px; left: 50%; width: 90px; height: 24px; translate: -50% 0; rotate: -3deg; background: rgba(246,215,154,.85); }
.note:hover { rotate: 0deg; transform: translateY(-8px); }
.note-t { font-family: var(--serif); font-size: 26px; line-height: 1.15; }
.note-x { opacity: .8; }
.note-more { justify-self: end; }
.table-all { margin-top: 34px; } .table-all a { color: var(--honey-soft); font-weight: 800; }

/* Back door */
.backdoor { padding: clamp(60px, 8vw, 120px) var(--gap); background: radial-gradient(70% 70% at 70% 50%, #fff2d4, var(--linen-2) 70%); }
.bd-in { max-width: var(--wide); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(30px, 6vw, 90px); align-items: center; }
.bd-copy p { max-width: 30em; }
.door-state { font-weight: 700; color: var(--wood-dark); }
.bd-frame { position: relative; width: min(420px, 100%); aspect-ratio: 5 / 9; justify-self: center; perspective: 1400px; border: 16px solid var(--wood); border-bottom-width: 0; border-radius: 6px 6px 0 0; box-shadow: 0 0 0 4px var(--wood-dark), 0 50px 70px -40px rgba(43,33,27,.6); background: #2b2016; }
.bd-room { position: absolute; inset: 0; overflow: hidden; background: linear-gradient(180deg, #ffd889, #e8a33d 60%, #b46b2c); }
.bd-light { position: absolute; left: 20%; top: 12%; width: 60%; height: 40%; border-radius: 50%; background: radial-gradient(#fff6d8, transparent 70%); filter: blur(6px); }
.bd-shelf { position: absolute; left: 12%; right: 12%; bottom: 26%; height: 8px; background: var(--wood-dark); box-shadow: 0 -60px 0 -2px rgba(94,59,34,.6), 0 -120px 0 -2px rgba(94,59,34,.4); }
.bd-door { position: absolute; inset: 0; transform-origin: left center; transform: rotateY(var(--open, 0deg)); transition: transform .2s linear; transform-style: preserve-3d; background: linear-gradient(90deg, #a36d40, var(--wood) 40%, #7a4d2c); box-shadow: inset 0 0 0 6px rgba(0,0,0,.1), 20px 0 40px rgba(0,0,0,.25); }
.bd-panel { position: absolute; left: 14%; right: 14%; height: 19%; border-radius: 4px; box-shadow: inset 0 0 0 4px rgba(0,0,0,.14), inset 2px 2px 0 6px rgba(255,255,255,.07); }
.p1 { top: 7%; } .p2 { top: 29%; } .p3 { top: 54%; } .p4 { top: 76%; }
.bd-knob { position: absolute; right: 9%; top: 49%; width: 26px; height: 26px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #fff2c7, #c8963e 50%, #7a5a20); box-shadow: 0 3px 6px rgba(0,0,0,.4); }
.bd-hole { position: absolute; right: calc(9% + 9px); top: 54%; width: 8px; height: 14px; border-radius: 4px 4px 2px 2px; background: #1d140d; }
.bd-note { position: absolute; left: 50%; top: 34%; translate: -50% 0; rotate: 4deg; width: 70%; padding: 16px 14px; background: #fffaf0; font: 30px/1 var(--hand); color: var(--clay); text-align: center; box-shadow: 0 10px 18px rgba(0,0,0,.3); }
.bd-note::before { content: ""; position: absolute; top: -8px; left: 50%; width: 14px; height: 14px; translate: -50% 0; border-radius: 50%; background: var(--clay); box-shadow: inset -3px -3px 0 rgba(0,0,0,.2); }
.backdoor.rattle .bd-door { animation: rattle .5s ease; }
@keyframes rattle { 20% { transform: rotateY(-4deg); } 40% { transform: rotateY(1deg); } 60% { transform: rotateY(-3deg); } 80% { transform: rotateY(.5deg); } }
@media (max-width: 860px) { .bd-in { grid-template-columns: 1fr; } .bd-frame { width: min(300px, 80%); } }

/* Pages */
.entry-content > .wp-block-group:not(.porch):not(.about):not(.ask) { max-width: var(--wide); margin-left: auto; margin-right: auto; padding: clamp(46px, 7vw, 100px) var(--gap); }
.page-title { font-size: clamp(44px, 6vw, 88px); }
.page-lead { font-size: clamp(19px, 1.6vw, 22px); max-width: 32em; }
.path { list-style: none; margin: 40px 0 0; padding: 0; display: grid; gap: 26px; position: relative; }
.path::before { content: ""; position: absolute; left: 44px; top: 20px; bottom: 20px; width: 4px; background: repeating-linear-gradient(var(--sage) 0 12px, transparent 12px 22px); }
.stone { position: relative; display: grid; grid-template-columns: 92px 1fr; gap: 6px 24px; align-items: start; margin-left: calc(var(--i) * clamp(0px, 4vw, 70px)); }
.stone-n { grid-row: span 2; width: 92px; height: 74px; border-radius: 48% 52% 44% 56% / 55% 48% 52% 45%; display: grid; place-items: center; font: 34px var(--serif); background: radial-gradient(circle at 35% 30%, #fff, var(--linen-2) 60%, #d8c7a6); box-shadow: 0 10px 18px -8px rgba(94,59,34,.5); }
.stone-t { font-family: var(--serif); font-size: clamp(24px, 2.4vw, 32px); }
.stone-x { opacity: .85; max-width: 38em; }
.known { display: grid; gap: 22px; margin: 50px 0 0; }
.known blockquote { margin: 0; padding: 26px 30px; background: #fffaf0; border-left: 8px solid var(--sage); box-shadow: 0 18px 30px -24px rgba(94,59,34,.6); }
.known blockquote p { font-family: var(--serif); font-size: clamp(20px, 1.8vw, 26px); line-height: 1.35; margin: 0 0 10px; color: var(--ink); }
.known cite { font-style: normal; font-size: 15px; font-weight: 700; }
.known-note { margin-top: 10px; }

/* Ask to join */
.ask { max-width: var(--wide); margin: 0 auto; padding: clamp(46px, 7vw, 100px) var(--gap); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(30px, 5vw, 70px); align-items: start; }
.ask > .wp-block-group__inner-container { display: contents; }
.door-note-wrap { display: grid; gap: 26px; }
.pinned { position: relative; display: grid; gap: 14px; padding: 40px 32px 32px; background: #fffaf0; rotate: 1.2deg; box-shadow: 0 30px 40px -24px rgba(43,33,27,.55); background-image: repeating-linear-gradient(180deg, transparent 0 33px, rgba(143,176,106,.3) 33px 34px); }
.pinned::before { content: ""; position: absolute; top: -10px; left: 50%; width: 22px; height: 22px; translate: -50% 0; border-radius: 50%; background: var(--clay); box-shadow: inset -4px -4px 0 rgba(0,0,0,.2), 0 4px 6px rgba(0,0,0,.25); }
.pinned label, .signin label, .kit-form label { display: grid; gap: 6px; font-weight: 700; font-size: 15px; }
.pinned label span { font-weight: 400; opacity: .7; }
.pinned input, .pinned textarea, .signin input, .kit-form input, .kit-form textarea, .kit-form select { font: 18px var(--sans); padding: 12px 14px; min-height: 50px; border: 2px solid rgba(43,33,27,.35); border-radius: 10px; background: #fff; }
.pinned input:focus, .pinned textarea:focus { outline: 3px solid var(--honey); border-color: var(--wood); }
.pinned .check { display: flex; gap: 10px; align-items: flex-start; font-weight: 600; }
.pinned .check input { min-height: 0; width: 22px; height: 22px; margin-top: 2px; accent-color: var(--clay); }
.pinned .btn, .signin .btn { justify-self: start; }
.pinned.is-sent { rotate: -1deg; }
.signin { display: grid; gap: 12px; padding: 26px; border: 2px dashed rgba(138,90,54,.45); border-radius: 14px; }
.signout a { font-weight: 800; }
.form-note { padding: 12px 16px; border-radius: 10px; background: #fff; font-weight: 700; }
.form-note.err { color: #9c3b1c; box-shadow: inset 0 0 0 2px var(--clay); }
.form-note.ok { box-shadow: inset 0 0 0 2px var(--sage); }
@media (max-width: 860px) { .ask { grid-template-columns: 1fr; } .pinned { rotate: 0deg; } }

/* Back room */
.room { display: grid; gap: 50px; }
.room-hi { font-size: 2.4em; margin: 0; }
.room-part h2 { font-size: clamp(30px, 3.4vw, 46px); }
.films { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
.film { margin: 0; background: var(--ink); padding: 14px 14px 18px; border-radius: 10px; color: var(--linen); box-shadow: 0 30px 40px -28px rgba(0,0,0,.7); background-image: repeating-linear-gradient(90deg, transparent 0 14px, rgba(255,255,255,.12) 14px 22px, transparent 22px 36px); background-size: 36px 10px; background-repeat: repeat-x; background-position: 0 4px; padding-top: 22px; }
.film video { width: 100%; border-radius: 4px; display: block; background: #000; }
.film figcaption { margin-top: 10px; font-weight: 700; }
.pairs { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 26px; }
.pair { margin: 0; display: grid; gap: 10px; }
.compare { position: relative; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 12px; box-shadow: 0 0 0 6px #fffaf0, 0 24px 34px -24px rgba(43,33,27,.6); }
.compare img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.compare .after { clip-path: inset(0 0 0 var(--pos)); }
.compare::after { content: ""; position: absolute; top: 0; bottom: 0; left: var(--pos); width: 3px; translate: -50% 0; background: #fff; box-shadow: 0 0 10px rgba(0,0,0,.3); pointer-events: none; }
.compare input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: ew-resize; margin: 0; }
.lbl { position: absolute; bottom: 10px; font-size: 13px; font-weight: 800; background: rgba(255,250,240,.9); padding: 3px 8px; border-radius: 4px; pointer-events: none; }
.l-b { left: 10px; } .l-a { right: 10px; }
.pair figcaption { font-weight: 700; }

/* About */
.about { max-width: var(--wide); margin: 0 auto; padding: clamp(46px, 7vw, 100px) var(--gap); display: grid; grid-template-columns: minmax(0, 360px) minmax(0, 1fr); gap: clamp(30px, 6vw, 90px); align-items: start; }
.about > .wp-block-group__inner-container { display: contents; }
.polaroids { display: grid; gap: 18px; position: sticky; top: 110px; }
.polaroid { margin: 0; background: #fffaf0; padding: 12px 12px 44px; box-shadow: 0 20px 30px -20px rgba(43,33,27,.6); position: relative; }
.polaroid:nth-child(1) { rotate: -3deg; } .polaroid:nth-child(2) { rotate: 2deg; margin-left: 40px; width: 75%; }
.polaroid .ph { aspect-ratio: 1; display: grid; place-items: center; text-align: center; padding: 20px; background: radial-gradient(circle, var(--honey-soft), var(--linen-2)); font: 26px/1.05 var(--hand); color: var(--wood); }
.polaroid figcaption { position: absolute; left: 0; right: 0; bottom: 12px; text-align: center; font: 24px var(--hand); color: var(--ink); }
.about-copy .pull { font-family: var(--serif); font-size: clamp(24px, 2.4vw, 32px); line-height: 1.3; color: var(--ink); border-left: 6px solid var(--honey); padding-left: 22px; margin: 34px 0; }
@media (max-width: 860px) { .about { grid-template-columns: 1fr; } .polaroids { position: relative; top: 0; grid-template-columns: 1fr 1fr; } .polaroid:nth-child(2) { margin: 20px 0 0; width: auto; } }

/* Blog */
.blog .entry-content, .single .entry-content { max-width: 760px; margin: 0 auto; padding: clamp(46px, 7vw, 100px) var(--gap); }
.post-list { max-width: var(--wide); margin: 0 auto; padding: clamp(46px, 7vw, 100px) var(--gap); }
.post-list .notes { margin-top: 30px; }
.post-list .note { color: var(--ink); }
.single-head { max-width: 760px; margin: 0 auto; padding: clamp(46px, 7vw, 90px) var(--gap) 0; }
.single-head h1 { font-size: clamp(40px, 5vw, 70px); }
.single-body { max-width: 760px; margin: 0 auto; padding: 20px var(--gap) 80px; font-size: 20px; line-height: 1.75; position: relative; }
.margin-note { position: absolute; right: -220px; top: 30px; width: 190px; rotate: 3deg; }
@media (max-width: 1240px) { .margin-note { position: static; width: auto; rotate: -1deg; margin-bottom: 20px; } }

/* Contact */
.contact { max-width: 760px; }
.kit-form form { display: grid; gap: 18px; padding: 32px; background: #fffaf0; box-shadow: 0 30px 40px -28px rgba(43,33,27,.55); border-radius: 4px; }

/* Footer */
.foot { background: var(--ink); color: var(--linen); padding: 64px var(--gap) 26px; }
.foot p { color: color-mix(in srgb, var(--linen) 75%, transparent); }
.foot-in { max-width: var(--wide); margin: 0 auto; display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: var(--gap); }
.foot-title { font-family: var(--serif); font-size: 28px; color: var(--honey-soft) !important; margin: 0; }
.foot-hand { color: var(--honey) !important; margin: 4px 0 14px; }
.foot-quiet { font-size: 15px; }
.foot-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.foot a:not(.btn) { text-decoration: none; }
.foot a:not(.btn):hover { color: var(--honey); }
.foot-base { max-width: var(--wide); margin: 44px auto 0; font-size: 14px; }
@media (max-width: 760px) { .foot-in { grid-template-columns: 1fr; } }

html, body { overflow-x: clip; }
@media (prefers-reduced-motion: reduce) { .bd-door { transition: none; } .rd-leaf { transition: none; } }
.arch { aspect-ratio: 5 / 4.8; }
.arch video, .arch img { object-position: 22% 50%; }
.hall-in > .room-door { min-width: 0; }
@media (max-width: 560px) { .room-door { flex-basis: 40%; } .rd-frame { height: 200px; } .rd-t { font-size: 22px; } }
.start { max-width: 1000px !important; }
.steps { list-style: none; padding: 0; margin: 24px 0 0; display: grid; gap: 12px; }
.steps li { display: flex; gap: 14px; align-items: center; font-weight: 700; }

.back { background: radial-gradient(70% 50% at 50% 0%, #fff2d4, transparent 70%); }
.post-list-wrap { min-height: 70vh; }
.post-list-wrap .page-title { margin-bottom: 10px; }
.single-head .kicker a { text-decoration: none; }
.contact .kit-form { margin-top: 30px; }
.kicker { font-family: var(--hand); font-weight: 400; font-size: 30px; letter-spacing: 0; text-transform: none; color: var(--clay); line-height: 1; rotate: -2deg; }
.btn, .wp-block-button__link { border-radius: 22px 22px 6px 6px; }
.nav-list a, .nav-toggle { border-radius: 14px 14px 4px 4px; }
.steps li::before { content: ""; width: 22px; height: 30px; border-radius: 11px 11px 2px 2px; background: var(--sage); box-shadow: inset -5px 0 0 rgba(0,0,0,.15); }
