/* D «Полароїд-стіна», раунд 2 */
:root{
  --wall:#ECE5D8;
  --wall2:#F3EEE4;
  --paper:#FCFAF5;
  --ink:#1E1B17;
  --mute:#3F392F;
  --soft:#5A5246;
  --gold:#CDAE3A;
  --ivory:#EFE9DC;
  --pad:clamp(16px,4vw,64px);
  --max:1560px;
  --sans:"Jost",system-ui,sans-serif;
  --hand:"Bad Script","Segoe Print",cursive;
  --ease:cubic-bezier(.2,.75,.2,1);
  --shadow:0 1px 2px rgba(60,42,18,.2),0 16px 30px -14px rgba(60,42,18,.45);
  --shadow-up:0 2px 4px rgba(60,42,18,.18),0 34px 50px -18px rgba(60,42,18,.52);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background-color:var(--wall);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9 .35' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .42 0 0 0 0 .33 0 0 0 0 .2 0 0 0 .085 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  color:var(--ink);font:400 18px/1.6 var(--sans);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
h1,h2,h3,p{margin:0}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:12px;top:-60px;z-index:300;background:var(--ink);color:var(--paper);padding:12px 16px;text-decoration:none}
.skip:focus{top:12px}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.room :focus-visible,.iris :focus-visible,.foot :focus-visible,.lb :focus-visible{outline-color:var(--gold)}

.hand{font-family:var(--hand);font-weight:400}
.h2{font:400 clamp(34px,4.2vw,68px)/1.04 var(--sans);letter-spacing:-.022em;text-wrap:balance}
.lead{color:var(--mute);font-size:clamp(17px,1.3vw,20px);max-width:34em;margin-top:16px}
.lead a{text-decoration-color:var(--gold);text-underline-offset:3px}
.kicker{font-size:16px;font-weight:500;letter-spacing:.01em;color:var(--mute)}
.more{display:inline-flex;align-items:center;gap:10px;font-weight:500;text-decoration:none;border-bottom:1.5px solid var(--gold);min-height:44px}
.more:hover{border-color:var(--ink)}

/* кнопки */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 26px;border-radius:3px;font:500 15px/1.2 var(--sans);letter-spacing:.02em;text-decoration:none;border:1.5px solid transparent;cursor:pointer;background:none;transition:background-color .25s,color .25s,border-color .25s;white-space:nowrap}
.btn--ink{background:var(--ink);color:var(--paper)}
.btn--ink:hover{background:#000}
.btn--line{border-color:var(--ink);color:var(--ink)}
.btn--line:hover{background:var(--ink);color:var(--paper)}
.btn--gold{background:var(--gold);color:#000}
.btn--gold:hover{background:#d9bb48}
.btn--light{border-color:var(--ivory);color:var(--ivory)}
.btn--light:hover{background:var(--ivory);color:#000}

/* шапка */
.top{position:fixed;inset:0 0 auto;z-index:100;height:72px;display:flex;align-items:center;gap:28px;padding:0 var(--pad);transition:background-color .3s,box-shadow .3s}
.top.scrolled{background:rgba(236,229,216,.96);box-shadow:0 1px 0 rgba(30,27,23,.1)}
.top__logo{display:flex;align-items:center;min-height:48px}
.top__logo img{height:46px;width:auto}
.top__nav{display:flex;gap:clamp(14px,1.8vw,30px);margin-left:auto}
.top__nav a{text-decoration:none;font-size:15px;font-weight:500;padding:12px 0;position:relative}
.top__nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1.5px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.top__nav a:hover::after{transform:none}
.top__cta{min-height:46px;padding:0 20px}
.burger{display:none;width:48px;height:48px;border:0;background:none;margin-left:auto;cursor:pointer;position:relative}
.burger span{position:absolute;left:12px;right:12px;height:1.5px;background:var(--ink);transition:transform .3s}
.burger span:first-child{top:19px}.burger span:last-child{top:28px}
.burger[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}

/* полароїд */
.pol{position:relative;margin:0;background:var(--paper);padding:0;box-shadow:var(--shadow);display:block}
.pol>.pol__photo{margin:6% 6% 0}
.pol__photo{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;background:#232b2c}
.pol__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pol figcaption,.pol__cap{display:block;text-align:center;font-family:var(--hand);font-size:clamp(15px,1.15vw,20px);line-height:1.25;padding:.6em .2em .85em;color:var(--ink)}
.pol .ghost{opacity:0}
.pol .real{opacity:0}
.pol .chem{position:absolute;inset:0;background:radial-gradient(120% 90% at 40% 35%,#3a4544 0%,#222a2b 60%,#1a2021 100%)}
.pin{position:absolute;left:50%;top:-6px;width:16px;height:16px;margin-left:-8px;border-radius:50%;z-index:3;
  background:radial-gradient(circle at 35% 30%,#f4e3a2 0 18%,var(--gold) 40%,#8b7322 100%);box-shadow:0 3px 4px rgba(0,0,0,.3)}
.tape{position:absolute;left:50%;top:-12px;width:46%;height:24px;margin-left:-23%;z-index:3;transform:rotate(-3deg);
  background:rgba(214,196,140,.66);
  clip-path:polygon(0 8%,6% 0,12% 10%,18% 0,24% 8%,30% 0,70% 0,76% 9%,82% 0,88% 10%,94% 0,100% 8%,100% 92%,94% 100%,88% 90%,82% 100%,76% 91%,70% 100%,30% 100%,24% 92%,18% 100%,12% 90%,6% 100%,0 92%)}

/* перший екран */
.hero{position:relative;min-height:max(680px,100svh);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;padding:96px var(--pad) 40px;overflow:hidden;
  --cw:min(37vw,calc((100svh - 118px) / 1.74),600px);--pw:calc(var(--cw) * .8)}
.hero__light{position:absolute;inset:0;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 900' preserveAspectRatio='none'%3E%3Cfilter id='b' x='-20%25' y='-20%25' width='140%25' height='140%25'%3E%3CfeGaussianBlur stdDeviation='26'/%3E%3C/filter%3E%3Cg filter='url(%23b)' fill='%23fffaf0' opacity='.7'%3E%3Cpolygon points='760,40 1010,40 930,380 680,380'/%3E%3Cpolygon points='1040,40 1290,40 1210,380 960,380'/%3E%3Cpolygon points='670,420 920,420 840,780 590,780'/%3E%3Cpolygon points='950,420 1200,420 1120,780 870,780'/%3E%3C/g%3E%3C/svg%3E") center/100% 100% no-repeat,
  radial-gradient(70% 80% at 72% 40%,rgba(255,248,232,.5),rgba(255,248,232,0) 70%)}
.hero__text{position:relative;z-index:5;max-width:min(760px,44vw)}
.hero__h1{font:400 clamp(44px,5vw,94px)/1 var(--sans);letter-spacing:-.03em;margin:18px 0 22px}
.hero__h1 .ln{display:block}
.hero__lead{color:var(--mute);font-size:clamp(17px,1.3vw,20px);max-width:31em;margin-bottom:30px}
.hero__motto{color:var(--ink);font-weight:500}
.hero__cta{display:flex;flex-wrap:wrap;gap:12px}
.hero__wall{position:absolute;inset:0;z-index:2;pointer-events:none}
.hero__wall>*{pointer-events:auto}
.pol--pinned{position:absolute;left:var(--x);top:var(--y);width:var(--w);transform:rotate(var(--r))}
.drag{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.drag.is-held{cursor:grabbing;box-shadow:var(--shadow-up);z-index:40}
.drag img{pointer-events:none}

.cam{position:absolute;left:calc(75% - var(--cw) / 2);top:max(92px,calc(50% - var(--cw) * .87 + 20px));width:var(--cw);height:calc(var(--cw) * .713);z-index:6}
.cam__shadow{position:absolute;left:4%;right:4%;top:88%;height:16%;background:radial-gradient(50% 50% at 50% 50%,rgba(40,28,10,.4),rgba(40,28,10,0) 70%);pointer-events:none}
.cam__body{position:absolute;inset:0;border:0;padding:0;background:none;border-radius:8%;cursor:pointer;z-index:3;-webkit-tap-highlight-color:transparent}
.cam__body:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
.cam__svg{width:100%;height:100%;display:block;color:var(--gold);overflow:visible;transition:transform .5s var(--ease);filter:drop-shadow(0 18px 22px rgba(40,28,10,.32))}
.cam__body:hover .cam__svg{transform:translateY(-3px)}
.cam__body:active .cam__svg{transform:translateY(1px) scale(.992);transition-duration:.08s}
.cam__lines path,.cam__lines circle{stroke-dasharray:1 1;stroke-dashoffset:0}
.cam__flash{position:absolute;left:79%;top:12%;width:16%;height:22%;border-radius:50%;background:radial-gradient(circle,#fff 0 25%,rgba(255,250,225,.65) 45%,transparent 70%);opacity:0;pointer-events:none}
.cam__slot{position:absolute;left:calc(var(--cw) * .49 - var(--pw) / 2 - 10px);top:calc(var(--cw) * .69);width:calc(var(--pw) + 20px);height:calc(var(--pw) * 1.5);overflow:hidden;z-index:1;pointer-events:none}
.cam__slot::before{content:"";position:absolute;left:0;right:0;top:0;height:14px;background:linear-gradient(rgba(0,0,0,.35),rgba(0,0,0,0));z-index:2;pointer-events:none}
.cam__slot .pol{pointer-events:auto}
.shot{position:absolute;left:10px;top:0;width:var(--pw);transform:translate3d(0,-102%,0);cursor:grab;touch-action:none}
.shot figcaption{font-size:clamp(17px,1.5vw,24px)}
.cam__hint{position:absolute;left:58%;top:-1%;display:flex;align-items:center;gap:6px;font-size:clamp(17px,1.3vw,21px);color:var(--soft);line-height:1.15;transform:rotate(-5deg);pointer-events:none;transition:opacity .5s;opacity:0;white-space:nowrap}
.cam__hint svg{width:40px;height:30px;flex:none;order:-1;transform:scaleY(-1) rotate(-20deg)}
.cam__hint span{width:9.6em;white-space:normal;text-align:left;text-wrap:balance}
.hero.ready .cam__hint{opacity:1}
.hero.user-shot .cam__hint{opacity:0}
.hero__flash{position:absolute;inset:0;background:#fffdf5;opacity:0;pointer-events:none;z-index:20}
.fly{position:absolute;z-index:30;margin:0}

/* затвор з непроявлених полароїдів */
.shutter{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.pb{position:absolute;left:0;top:0;transform-origin:0 0;background:#FBF8F1;will-change:transform;
  box-shadow:0 0 0 1px rgba(205,174,58,.7),0 24px 70px rgba(0,0,0,.6)}
.pb::before{content:"";position:absolute;left:5.5%;right:5.5%;top:5%;bottom:19%;background:#1E1B17 var(--img) center/cover no-repeat;box-shadow:inset 0 0 0 1px rgba(0,0,0,.3),inset 0 0 60px rgba(0,0,0,.45)}
.pb::after{content:"";position:absolute;left:50%;bottom:5.5%;width:9%;aspect-ratio:1;transform:translateX(-50%);background:url(../img/logo-fotik-transparent.png) center/contain no-repeat}
.blink{position:fixed;z-index:120;display:none}
.blink.on{display:block}

/* сцени із затвором */
.iris{position:relative;height:230vh;background:#000}
.iris__stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.iris__photo{position:absolute;inset:0}
.iris__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 58%}
.iris--book .iris__photo img{object-position:50% 28%}
.iris__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.38) 42%,rgba(0,0,0,0) 70%)}
.iris__copy{position:absolute;left:var(--pad);right:var(--pad);bottom:clamp(36px,9vh,110px);color:var(--ivory);max-width:900px;z-index:2}
.js .iris__copy{opacity:0;transform:translateY(18px);transition:opacity .7s,transform .7s var(--ease)}
.js .iris.open .iris__copy{opacity:1;transform:none}
.iris__title{font:400 clamp(44px,6.8vw,118px)/1 var(--sans);letter-spacing:-.03em}
.iris__sub{font-size:clamp(18px,1.5vw,23px);line-height:1.45;margin-top:16px;max-width:30em;color:#EDE5D3}
.book__btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* підхід */
.sec{padding:clamp(80px,10vw,160px) var(--pad);max-width:var(--max);margin:0 auto}
.about{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(40px,7vw,130px);align-items:center}
.about__card{position:relative;justify-self:center;width:min(100%,430px);padding-top:30px}
.clip{position:absolute;left:50%;top:0;width:18px;height:52px;margin-left:-9px;z-index:4;background:linear-gradient(90deg,#14120f 0 42%,var(--gold) 42% 58%,#14120f 58%);border-radius:3px;box-shadow:0 4px 6px rgba(0,0,0,.25)}
.flip{width:100%;border:0;padding:0;background:none;cursor:pointer;perspective:1400px;transform:rotate(-2.5deg)}
.flip__in{display:block;position:relative;transform-style:preserve-3d;transition:transform .9s var(--ease)}
.flip[aria-pressed="true"] .flip__in{transform:rotateY(180deg)}
.flip__face,.flip__back{display:block;background:var(--paper);padding:6% 6% 0;box-shadow:var(--shadow);backface-visibility:hidden;-webkit-backface-visibility:hidden}
.flip__back{position:absolute;inset:0;transform:rotateY(180deg);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:12%;background:#F6F1E6;text-align:center}
.pol__photo--me{background:#f3f1ec}
.pol__photo--me img{object-fit:cover;object-position:50% 12%}
.flip .pol__cap{font-size:clamp(20px,1.8vw,26px)}
.back__note{font-size:clamp(24px,2.1vw,32px);line-height:1.35;color:var(--ink)}
.back__small{font-size:15px;font-weight:500;color:var(--mute)}
.back__sign{width:30%;opacity:.95}
.about__tip{text-align:center;color:var(--mute);font-size:15px;margin-top:18px}
.about__lead{font-size:clamp(21px,1.8vw,28px);line-height:1.35;margin:18px 0 22px}
.about__text p:not(.about__lead){color:var(--mute);max-width:36em;margin-bottom:14px}

/* стіна напрямів */
.wall-sec{max-width:none;padding-left:0;padding-right:0;background:var(--wall2);position:relative}
.wall-sec::before,.wall-sec::after{content:"";position:absolute;left:0;right:0;height:1px;background:rgba(30,27,23,.08)}
.wall-sec::before{top:0}.wall-sec::after{bottom:0}
.wall-head{max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:flex;justify-content:space-between;align-items:flex-end;gap:24px 32px;flex-wrap:wrap}
.wall-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.wall-hint{color:var(--soft);font-size:20px;margin-right:10px}
#nextCard{display:none}
.wall{position:relative;max-width:var(--max);margin:clamp(30px,4vw,60px) auto 0;height:clamp(600px,52vw,900px);padding:0 var(--pad);--cw:clamp(160px,12.8vw,216px)}
.wc{position:absolute;left:0;top:0;width:var(--cw);will-change:transform;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;perspective:1000px;-webkit-tap-highlight-color:transparent}
.wc.is-held{cursor:grabbing;z-index:60}
.wc.anim{transition:transform .85s var(--ease)}
.wc__in{display:block;position:relative;transform-style:preserve-3d;transition:transform .7s var(--ease)}
.wc.tilting .wc__in{transition:transform .15s linear}
.wc__f{width:100%;border:0;cursor:inherit;font:inherit;color:inherit;text-align:center}
.wc__f,.wc__b{display:block;background:var(--paper);padding:6% 6% 0;box-shadow:var(--shadow);backface-visibility:hidden;-webkit-backface-visibility:hidden}
.wc.is-held .wc__f,.wc.is-held .wc__b{box-shadow:var(--shadow-up)}
.wc__f img{pointer-events:none}
.wc__glare{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--gx,50%) var(--gy,30%),rgba(255,255,255,.45),rgba(255,255,255,0) 45%);opacity:0;transition:opacity .3s;mix-blend-mode:soft-light}
.wc:hover .wc__glare{opacity:1}
/* зворот полароїда */
.wc__b{position:absolute;inset:0;transform:rotateY(180deg);padding:9% 9% 8%;display:flex;flex-direction:column;text-align:left;
  background:
    repeating-linear-gradient(0deg,rgba(30,27,23,.045) 0 1px,transparent 1px 24px),
    radial-gradient(120% 80% at 30% 20%,#FBF8F1,#F1EADC)}
.wc__stamp{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;letter-spacing:.06em;color:var(--soft);border:1px solid rgba(90,82,70,.4);border-radius:3px;padding:4px 8px 4px 5px;align-self:flex-start;transform:rotate(-2deg)}
.wc__stamp img{width:22px;height:22px}
.wc__b h3{font:500 clamp(17px,1.35vw,21px)/1.15 var(--sans);letter-spacing:-.01em;margin-top:16%}
.wc__b p{font-size:clamp(14px,1vw,15.5px);line-height:1.45;color:var(--mute);margin-top:8px}
.wc__b a{position:absolute;right:-12px;bottom:-12px;width:clamp(72px,5.4vw,88px);height:clamp(72px,5.4vw,88px);border-radius:50%;background:var(--gold);color:#000;display:flex;align-items:center;justify-content:center;text-align:center;font:500 13px/1.15 var(--sans);text-decoration:none;transform:rotate(-8deg);box-shadow:0 3px 6px rgba(60,42,18,.25)}
.wc__b a:hover{background:#d9bb48}
.wc .pin{top:-7px}
.wc:focus-within .wc__f:focus-visible,.wc__b a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.wall-all{max-width:var(--max);margin:24px auto 0;padding:0 var(--pad);text-align:right}
.wall-fallback{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}

/* мотузка */
.line-sec{position:relative;height:300vh}
.line__stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;flex-direction:column;padding:96px 0 28px}
.line__head{padding:0 var(--pad);max-width:var(--max);width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:30px;align-items:end}
.line__head .lead{justify-self:end}
.line__track{position:relative;flex:1;min-height:0}
.rope{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}
.rope path{fill:none;stroke:#8a7a5c;stroke-width:1.8}
.rope .rope__shadow{stroke:rgba(60,42,18,.14);stroke-width:3}
.line__cards{position:absolute;inset:0}
.lc{position:absolute;left:0;top:0;width:var(--lw,clamp(200px,min(19vw,40vh),380px));transform-origin:50% -14px;cursor:zoom-in;border:0;padding:0;background:none;text-align:inherit}
.lc .pol{pointer-events:none}
.lc .peg{position:absolute;left:50%;top:-24px;width:13px;height:40px;margin-left:-6.5px;z-index:3;border-radius:3px;background:linear-gradient(90deg,#1b1915 0 44%,var(--gold) 44% 56%,#1b1915 56%);box-shadow:0 3px 4px rgba(0,0,0,.25)}
.lc:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.line__foot{padding:0 var(--pad);max-width:var(--max);width:100%;margin:0 auto;display:flex;align-items:center;gap:28px}
.line__bar{flex:1;height:2px;background:rgba(30,27,23,.12);position:relative;overflow:hidden}
.line__bar i{position:absolute;inset:0;background:var(--ink);transform-origin:left;transform:scaleX(0)}

/* темна кімната */
.room{max-width:none;background:#000;color:var(--ivory);position:relative;overflow:hidden}
.room__glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(55% 60% at 82% 6%,rgba(214,170,60,.34),rgba(214,170,60,0) 70%),radial-gradient(40% 40% at 10% 100%,rgba(205,174,58,.12),rgba(205,174,58,0) 70%);opacity:0;transition:opacity 1.6s ease}
.room.lit .room__glow{opacity:1}
.lamp{position:absolute;top:0;right:clamp(40px,14vw,260px);width:clamp(70px,7vw,110px);transform-origin:50% 0;pointer-events:none}
.lamp svg{width:100%;height:auto;display:block}
.lamp__bulb{opacity:.25;transition:opacity 1s}
.room.lit .lamp__bulb{opacity:1}
.room.lit .lamp{animation:swing 3.2s cubic-bezier(.3,.1,.3,1) 1}
@keyframes swing{0%{transform:rotate(0)}12%{transform:rotate(7deg)}30%{transform:rotate(-5deg)}50%{transform:rotate(3deg)}70%{transform:rotate(-1.5deg)}100%{transform:rotate(0)}}
.room__head,.room__steps,.room>.btn{position:relative;max-width:var(--max);margin-left:auto;margin-right:auto}
.room__head{padding-right:clamp(0px,16vw,320px)}
.room .lead{color:#D6CDBA}
.room .lead a{color:var(--ivory)}
.room__steps{list-style:none;padding:0;margin-top:clamp(44px,6vw,90px);margin-bottom:clamp(44px,5vw,70px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,56px)}
.step .pol{width:78%;transform:rotate(-2deg);margin-bottom:28px}
.step:nth-child(2) .pol{transform:rotate(1.5deg)}
.step:nth-child(3) .pol{transform:rotate(-1deg)}
.step:nth-child(4) .pol{transform:rotate(2.2deg)}
.step h3{font:500 clamp(22px,1.8vw,28px)/1.2 var(--sans);margin-bottom:10px}
.step p{color:#D6CDBA;font-size:17px}
.room>.btn{display:flex;width:max-content}

/* ціни */
.prices{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(40px,6vw,110px);align-items:start}
.prices__side{position:relative;align-self:stretch}
.pol--side{width:min(76%,330px);margin-top:46px;transform:rotate(var(--r))}
.sheet{position:relative;background:var(--paper);padding:clamp(28px,4vw,64px);box-shadow:var(--shadow);transform:rotate(.4deg)}
.tape--l{left:8%;margin-left:0;width:120px;transform:rotate(-8deg)}
.tape--r{left:auto;right:8%;margin-left:0;width:120px;transform:rotate(7deg)}
.plist{list-style:none;margin:0 0 26px;padding:0}
.plist li{padding:22px 0;border-bottom:1px solid rgba(30,27,23,.12)}
.plist li:first-child{padding-top:0}
.prow{display:flex;justify-content:space-between;align-items:baseline;gap:18px}
.prow h3{font:500 clamp(19px,1.5vw,24px)/1.25 var(--sans)}
.pr{font:400 clamp(26px,2.3vw,38px)/1 var(--sans);white-space:nowrap;letter-spacing:-.02em}
.pmeta{color:var(--mute);font-size:16px;margin-top:8px;max-width:40em}
.pinc{font-size:16px;line-height:1.55;margin-top:12px;color:var(--mute);padding-left:16px;border-left:2px solid var(--gold)}
.pinc b{color:var(--ink);font-weight:500}
.pnote{color:var(--mute);font-size:16px;margin-bottom:26px}
.pnote b{color:var(--ink);font-weight:500}

/* питання */
.faq{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,6vw,110px);padding-top:0}
.reviews{display:flex;align-items:center;gap:26px;margin-top:40px;text-decoration:none}
.reviews__stack{position:relative;width:150px;height:170px;flex:none}
.reviews__stack img{position:absolute;left:24px;top:8px;width:96px;height:120px;object-fit:cover;border:6px solid var(--paper);border-bottom-width:22px;box-shadow:var(--shadow);transition:transform .5s var(--ease)}
.reviews__stack img:nth-child(1){transform:rotate(-9deg) translateX(-14px)}
.reviews__stack img:nth-child(2){transform:rotate(4deg) translateX(8px)}
.reviews__stack img:nth-child(3){transform:rotate(-1deg)}
.reviews:hover .reviews__stack img:nth-child(1){transform:rotate(-18deg) translate(-30px,6px)}
.reviews:hover .reviews__stack img:nth-child(2){transform:rotate(14deg) translate(32px,6px)}
.reviews:hover .reviews__stack img:nth-child(3){transform:rotate(0) translateY(-10px)}
.reviews__txt{color:var(--mute);font-size:16px;max-width:19em}
.reviews__txt b{display:block;color:var(--ink);font-weight:500;font-size:20px;margin-bottom:4px}
/* відгуки */
.revs{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(40px,6vw,110px);align-items:center}
.revs__text .btn{margin-top:30px}
.revs__ring{display:flex;align-items:center;gap:18px;margin-top:34px;text-decoration:none;width:max-content;max-width:100%}
.revs__circle{width:92px;height:92px;border-radius:50%;padding:5px;flex:none;background:conic-gradient(from 200deg,var(--gold),#f1dc8a,var(--gold),#9b7f22,var(--gold));transition:transform .5s var(--ease)}
.revs__circle img{width:100%;height:100%;border-radius:50%;background:#000;border:3px solid var(--wall);padding:14%}
.revs__ring:hover .revs__circle{transform:rotate(-12deg) scale(1.04)}
.revs__label b{display:block;font-size:22px;font-weight:500}
.revs__label span{color:var(--mute);font-size:15px}
.revs__board{position:relative;display:block;height:clamp(380px,36vw,560px);--sw:clamp(150px,13vw,230px)}
.story{position:absolute;top:50%;left:50%;width:var(--sw);aspect-ratio:9/16;background:var(--paper);padding:8px 8px 30px;box-shadow:var(--shadow);transition:transform .7s var(--ease)}
.story img{width:100%;height:100%;object-fit:cover}
.story--1{transform:translate(-118%,-50%) rotate(-8deg)}
.story--2{transform:translate(-50%,-54%) rotate(2deg);z-index:2}
.story--3{transform:translate(18%,-48%) rotate(9deg)}
.revs__board:hover .story--1{transform:translate(-138%,-46%) rotate(-13deg)}
.revs__board:hover .story--2{transform:translate(-50%,-60%) rotate(0)}
.revs__board:hover .story--3{transform:translate(38%,-44%) rotate(14deg)}
details{border-bottom:1px solid rgba(30,27,23,.15)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:clamp(18px,1.4vw,22px);min-height:44px}
summary::-webkit-details-marker{display:none}
summary i{width:14px;height:14px;position:relative;flex:none}
summary i::before,summary i::after{content:"";position:absolute;left:0;right:0;top:6px;height:1.5px;background:var(--ink);transition:transform .3s}
summary i::after{transform:rotate(90deg)}
details[open] summary i::after{transform:none}
details p{color:var(--mute);padding:0 0 22px;max-width:36em}
.faq__list .more{margin-top:20px}
.gift{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(30px,5vw,90px);align-items:center;margin-top:clamp(40px,6vw,90px)}
.gift img{transform:rotate(-2deg);box-shadow:var(--shadow)}
.gift h3{font:400 clamp(28px,2.6vw,42px)/1.1 var(--sans);letter-spacing:-.02em;margin-bottom:14px}
.gift p{color:var(--mute);max-width:34em;margin-bottom:10px}

/* підвал */
.foot{background:#000;color:#D6CDBA;padding:56px var(--pad) 40px;display:grid;grid-template-columns:auto 1fr;gap:20px 40px;align-items:center}
.foot__logo{width:150px}
.foot nav{display:flex;flex-wrap:wrap;gap:0 26px;justify-content:flex-end}
.foot nav a{text-decoration:none;font-size:15px;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}
.foot nav a:hover{color:var(--gold)}
.foot__copy{grid-column:1/-1;font-size:14px;border-top:1px solid #2a2722;padding-top:22px}

/* перегляд */
.lb{position:fixed;inset:0;z-index:150;background:rgba(236,229,216,.95);display:grid;grid-template-columns:auto auto auto;align-items:center;justify-content:center;gap:clamp(8px,3vw,40px);padding:24px}
.lb[hidden]{display:none}
.lb__pol{width:min(78vw,calc((100svh - 150px) * .74),640px);box-shadow:var(--shadow-up)}
.lb__pol figcaption{font-size:clamp(19px,2vw,28px)}
.lb__x{position:absolute;top:14px;right:14px;width:52px;height:52px;border:0;background:var(--ink);color:var(--paper);font-size:28px;line-height:1;border-radius:50%;cursor:pointer}
.lb__nav{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--ink);background:var(--paper);cursor:pointer;display:grid;place-items:center}
.lb__nav svg{width:24px;height:24px}
.lb__nav:hover{background:var(--ink);color:var(--paper)}
.lb__count{position:absolute;left:0;right:0;bottom:18px;text-align:center;font-size:15px;color:var(--mute);pointer-events:none}

/* стан без анімацій */
.no-dev .pol .real{opacity:1}
.no-dev .pol .chem,.no-dev .pol .ghost{opacity:0}

/* планшет */
@media (max-width:1100px){
  .top__nav{gap:16px}
  .top__nav a{font-size:14px}
  .wall{height:780px;--cw:clamp(140px,18vw,200px)}
}
@media (max-width:980px){
  .top{gap:12px}
  .burger{display:block}
  .top__cta{display:none}
  .top__nav{position:fixed;top:72px;left:0;right:0;flex-direction:column;gap:0;background:var(--wall);padding:8px var(--pad) 24px;box-shadow:0 20px 30px -20px rgba(30,27,23,.4);display:none}
  .top__nav.open{display:flex}
  .top__nav a{font-size:20px;padding:12px 0;border-bottom:1px solid rgba(30,27,23,.08)}
  .top.menu-open{background:var(--wall)}
  .hero{grid-template-columns:1fr;align-items:start;padding-top:80px;min-height:0;--cw:min(60vw,calc((100svh - 440px) / 1.72),460px)}
  .hero__wall{position:relative;inset:auto;height:calc(var(--cw) * 1.73);order:-1;margin-bottom:14px}
  .cam{left:calc(50% - var(--cw) / 2);top:0}
  .pol--pinned{--w:clamp(86px,15vw,140px)!important}
  .hero .pol--pinned:nth-child(1){left:-6px;top:52%}
  .hero .pol--pinned:nth-child(2){display:none}
  .hero .pol--pinned:nth-child(3){left:auto;right:4px;top:40%}
  .cam__hint{right:auto;left:calc(100% - 10px);top:4%;flex-direction:column-reverse;align-items:flex-start;gap:0}
  .cam__hint svg{transform:scaleX(-1) rotate(-30deg);width:44px}
  .cam__hint span{text-align:left;width:8.5em;max-width:none}
  .hero__text{max-width:none}
  .hero__more{display:none}
  .hero__lead{margin-bottom:18px}
  .hero__h1{margin-top:10px;margin-bottom:22px}
  .about{grid-template-columns:1fr}
  .about__card{width:min(84%,400px)}
  .wall-tools{width:100%}
  .line__head{grid-template-columns:1fr}
  .line__head .lead{justify-self:start;margin-top:0}
  .lc{--lw:min(42vw,340px)}
  .room__head{padding-right:clamp(80px,20vw,200px)}
  .room__steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:50px}
  .prices{grid-template-columns:1fr}
  .prices__side{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:24px;align-items:start}
  .pol--side{margin-top:0;width:100%;max-width:280px;justify-self:end}
  .faq{grid-template-columns:1fr}
  .gift{grid-template-columns:1fr}
  .revs{grid-template-columns:1fr}
}
/* телефон */
@media (max-width:760px){
  body{font-size:17px}
  .top{height:64px}
  .top__nav{top:64px}
  .top__logo img{height:40px}
  .hero{padding-top:70px;padding-bottom:36px;--cw:min(76vw,calc((100svh - 364px) / 1.72),340px)}
  .hero .pol--pinned{display:none}
  .kicker{font-size:14px}
  .hero__h1{font-size:clamp(34px,9.6vw,48px);margin:8px 0 18px}
  .hero__cta .btn{flex:1 1 auto;padding:0 16px}
  .hero__more{display:none}
  .hero__lead{margin-bottom:18px}
  .cam__hint{font-size:15px;left:-30px;top:-1%;transform:rotate(-4deg)}
  .cam__hint svg{display:none}
  .cam__hint span{max-width:6.4em}
  .wall-hint{font-size:18px;width:100%;margin:0}
  #scatter,#tidy{display:none}
  #nextCard{display:inline-flex}
  .wall{--cw:min(68vw,300px);height:calc(var(--cw) * 1.36 + 50px)}
  .wc__b p{font-size:15px}
  .wall-all{text-align:left}
  .line__stage{padding-top:80px}
  .lc{--lw:min(58vw,260px)}
  .lamp{right:18px;width:64px}
  .room__head{padding-right:76px}
  .room__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 16px}
  .step .pol{width:100%;margin-bottom:18px}
  .step h3{font-size:20px}
  .step p{font-size:15px}
  .room>.btn{width:100%}
  .prices__side{grid-template-columns:1fr}
  .pol--side{display:none}
  .sheet{padding:28px 20px 30px;transform:none}
  .prow{flex-direction:column;gap:4px}
  .sheet .btn{width:100%;white-space:normal;text-align:center}
  .revs__board{height:340px;--sw:min(30vw,140px)}
  .reviews{gap:16px}
  .reviews__stack{width:120px;height:150px}
  .reviews__stack img{width:80px;height:100px;left:18px}
  .iris{height:200vh}
  .iris__title{font-size:clamp(40px,12vw,64px)}
  .book__btns .btn{width:100%;white-space:normal}
  .foot{grid-template-columns:1fr}
  .foot nav{justify-content:flex-start}
  .lb{grid-template-columns:1fr}
  .lb__pol{width:min(86vw,calc((100svh - 200px) * .74))}
  .lb__prev,.lb__next{position:absolute;bottom:22px}
  .lb__prev{left:calc(50% - 120px)}
  .lb__next{right:calc(50% - 120px)}
  .lb__count{bottom:36px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
  .iris{height:auto}
  .iris__stage{position:relative;height:100svh}
  .js .iris__copy{opacity:1;transform:none}
  .iris .shutter{display:none}
  .line-sec{height:auto}
  .line__stage{position:relative;height:auto;padding-bottom:56px}
  .line__track{height:auto;overflow-x:auto;flex:none;padding:40px 0 30px}
  .line__cards{position:relative;display:flex;gap:28px;padding:0 var(--pad);width:max-content}
  .lc{position:relative}
  .rope{display:none}
  .room__glow{opacity:1}
  .lamp__bulb{opacity:1}
}
