:root{
  --paper:#f7f3ef;--paper2:#f1ebe5;--ink:#1b1616;--ink2:#3a3130;--mute:#6f6461;--rule:#e2d8d2;
  --red:#e82b26;--red-d:#c11f1b;--wine:#a3201c;
  --night:#0f0c0c;--night2:#1a0d0c;--cream:#f4eee8;--cream2:#cdbfb8;
  --serif:"Cormorant Garamond",Garamond,Georgia,serif;--sans:"Hanken Grotesk",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px;-webkit-text-size-adjust:100%}
body{background:var(--paper);color:var(--ink);font:400 18px/1.68 var(--sans);font-kerning:normal;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit}
p,dd,li{text-wrap:pretty;hanging-punctuation:first}
h1,h2,h3{text-wrap:balance;font-weight:500}
::selection{background:#f6c9c6;color:var(--ink)}
.w{width:min(1160px,100% - 48px);margin-inline:auto}

/* naglowek */
.top{position:sticky;top:0;z-index:10;background:#0f0c0c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--cream)}
.bar{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:24px 0 20px;border-bottom:1px solid rgba(244,238,232,.12)}
.name{font:500 25px/1 var(--serif);text-decoration:none;letter-spacing:.005em;display:flex;align-items:center;gap:12px}
.name:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--red);box-shadow:0 0 12px 2px rgba(232,43,38,.55)}
.top nav{display:flex;gap:30px;font-size:15.5px}
.top nav a{text-decoration:none;color:var(--cream2)}
.top nav a:hover{color:var(--cream);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.top nav .write{color:#ff6b66}

/* hero */
.hero{padding:80px 0 120px;color:var(--cream);background:
  radial-gradient(48% 70% at 80% 62%,rgba(232,43,38,.42) 0%,rgba(150,20,18,.22) 38%,rgba(15,12,12,0) 72%),
  linear-gradient(180deg,var(--night) 0%,#140b0b 100%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(40px,7vw,110px);align-items:end}
.place{font:italic 400 21px/1 var(--serif);color:#ff8a85;margin-bottom:30px}
h1{font:500 clamp(42px,5.4vw,74px)/1.04 var(--serif);letter-spacing:-.012em;font-feature-settings:"kern","liga","onum"}
.lead{font-size:19.5px;line-height:1.65;color:var(--ink2);max-width:34em;margin-top:30px}
.hero .lead{color:var(--cream2)}
.mail-line{margin-top:40px;display:flex;align-items:baseline;gap:22px;flex-wrap:wrap}
.mail-line a{font:500 17px/1 var(--sans);color:#fff;background:var(--red);text-decoration:none;padding:17px 30px;border-radius:2px;transition:background .2s,box-shadow .2s;box-shadow:0 12px 34px -14px rgba(232,43,38,.8)}
.mail-line a:hover{background:var(--red-d)}
.mail-line span{font-size:16px;color:var(--cream2)}
.portrait{margin:0}
.frame{aspect-ratio:3/4;border-radius:999px 999px 3px 3px;position:relative;overflow:hidden;
  background:radial-gradient(70% 55% at 50% 58%,rgba(232,43,38,.75) 0%,rgba(150,18,16,.45) 42%,rgba(30,10,10,.95) 78%),#1c0c0b;
  box-shadow:0 0 0 1px rgba(255,120,110,.18),0 40px 90px -30px rgba(232,43,38,.55)}
.frame:after{content:"";position:absolute;inset:10px;border-radius:999px 999px 2px 2px;border:1px solid rgba(255,160,150,.18)}
.portrait figcaption{font:italic 400 16px/1.4 var(--serif);color:var(--cream2);margin-top:14px}

/* sekcje */
section{padding:100px 0}
h2{font:500 clamp(34px,3.6vw,50px)/1.08 var(--serif);letter-spacing:-.01em;font-feature-settings:"kern","liga","onum"}
h2:after{content:"";display:block;width:44px;height:2px;background:var(--red);margin-top:20px}
.who-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 70px;margin-top:40px;max-width:1000px}
.who-grid p{color:var(--ink2);padding-left:18px;border-left:2px solid #f0c9c6}
.who-grid strong{font:600 18px/1.5 var(--sans);color:var(--ink)}
.aside{margin-top:46px;font:italic 400 21px/1.5 var(--serif);color:var(--mute)}
.aside a{color:var(--wine);text-underline-offset:4px;text-decoration-thickness:1px}

.work{background:linear-gradient(180deg,#1d0908 0%,var(--night2) 100%);color:var(--cream)}
.work-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(30px,6vw,100px)}
.prose p{color:var(--cream2);max-width:36em}
.prose p+p{margin-top:1.1em}
.prose p:first-child::first-line{font-weight:600;color:var(--cream)}

.know-list{margin-top:40px;border-top:2px solid var(--ink)}
.know-list div{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(20px,6vw,100px);padding:24px 0;border-bottom:1px solid var(--rule)}
.know-list dt{font:500 27px/1.2 var(--serif)}
.know-list div:first-child dt{color:var(--wine)}
.know-list dd{color:var(--ink2);max-width:36em}

.about{background:var(--paper2)}
.about-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(40px,7vw,110px);align-items:start}
.about-text p{color:var(--ink2);max-width:36em;margin-top:1.1em}
.about-text h2+p{margin-top:28px}
.sig{font:italic 400 30px/1 var(--serif)!important;color:var(--wine)!important;margin-top:34px!important}
.partners{padding-top:14px}
.partners h3{font:600 15px/1.4 var(--sans);color:var(--mute);margin-bottom:14px}
.partners ul{list-style:none;border-top:1px solid var(--rule)}
.partners li{padding:16px 0;border-bottom:1px solid var(--rule);color:var(--ink2);font-size:16.5px}
.partners li b{display:block;font:500 23px/1.25 var(--serif);color:var(--ink)}
.partners p{margin-top:18px;font-size:16px}
.partners p a{color:var(--wine);text-underline-offset:4px;text-decoration-thickness:1px}

.contact{color:var(--cream);background:
  radial-gradient(60% 80% at 15% 110%,rgba(232,43,38,.35) 0%,rgba(15,12,12,0) 65%),var(--night)}
.contact-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(40px,7vw,110px);align-items:end}
.contact .lead{color:var(--cream2)}
.big-mail{margin-top:38px;font:500 clamp(28px,3.4vw,44px)/1.1 var(--serif);word-break:break-word}
.big-mail a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px;text-decoration-color:rgba(232,43,38,.7)}
.big-mail a:hover{text-decoration-color:var(--red)}
.wa-line{margin-top:18px}
.wa-line a{color:var(--cream2);text-underline-offset:4px}
.card{background:var(--paper);color:var(--ink);padding:30px 30px 26px;border-radius:2px;border-top:3px solid var(--red)}
.card-name{font:500 28px/1.1 var(--serif)}
.card-role{color:var(--mute);font-size:16px;margin-top:8px}
.card-links{margin-top:22px;padding-top:16px;border-top:1px solid var(--rule);font-size:16px}
.card-links a{color:var(--wine);text-underline-offset:4px;text-decoration-thickness:1px}

footer{background:var(--night);color:#8f8480;font-size:14.5px}
.foot{display:flex;justify-content:space-between;gap:14px 30px;flex-wrap:wrap;padding:26px 0 34px;border-top:1px solid rgba(244,238,232,.1)}
.foot span:last-child{display:flex;gap:22px}
.foot a{text-decoration:none}
.foot a:hover{color:var(--cream)}

/* podstrony */
.page{padding:70px 0 100px}
.page .w{max-width:820px}
.page h1{font-size:clamp(38px,4.6vw,56px);margin-bottom:24px}
.legal h2{font:600 19px/1.4 var(--sans);margin:34px 0 6px}
.legal h2:after{display:none}
.legal p,.legal li{color:var(--ink2);font-size:16.5px;margin-top:10px}
.legal ul{padding-left:20px}
.legal a{color:var(--wine)}
.note{margin-top:44px;font:italic 400 18px/1.5 var(--serif);color:var(--mute)}
.shoplist{margin-top:40px;border-top:2px solid var(--ink)}
.shoplist div{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,6fr) auto;gap:20px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--rule)}
.shoplist b{font:500 25px/1.2 var(--serif)}
.shoplist span{color:var(--ink2);font-size:16.5px}
.shoplist a{color:var(--wine);font-size:16px;text-underline-offset:4px}
.shoplist em{font:italic 400 16px var(--serif);color:var(--mute)}

@media (max-width:860px){
  .top nav a:not(.write){display:none}
  .hero{padding:44px 0 80px;background:
    radial-gradient(90% 45% at 50% 88%,rgba(232,43,38,.42) 0%,rgba(150,20,18,.2) 40%,rgba(15,12,12,0) 75%),
    linear-gradient(180deg,var(--night) 0%,#140b0b 100%)}
  .hero-grid,.work-grid,.about-grid,.contact-grid{grid-template-columns:1fr}
  .portrait{max-width:330px}
  .who-grid{grid-template-columns:1fr;gap:22px}
  .know-list div{grid-template-columns:1fr;gap:6px}
  section{padding:70px 0}
  .shoplist div{grid-template-columns:1fr;gap:4px}
}
@media (max-width:520px){
  body{font-size:17px}
  .w{width:calc(100% - 36px)}
  .bar{padding:18px 0 14px}
  .name{font-size:22px}
  .lead{font-size:18px}
  .mail-line a{display:block;width:100%;text-align:center}
}

/* v5: persona ekspertki + wizytówka */
.mail-line a.soft{background:none;box-shadow:none;color:var(--cream);padding:17px 4px;border-bottom:1px solid rgba(244,238,232,.4);border-radius:0}
.mail-line a.soft:hover{background:none;border-color:var(--red)}
.intro{font-size:19px;color:var(--ink2);max-width:34em;margin-top:22px}
.approach-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(30px,6vw,100px);align-items:start}
.approach .know-list{margin-top:8px}
.approach .know-list div{grid-template-columns:minmax(0,3fr) minmax(0,7fr)}
.tools{background:var(--paper2)}
.tool-main{margin-top:46px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end;padding:40px 44px;color:var(--cream);border-radius:2px;
  background:radial-gradient(70% 120% at 100% 100%,rgba(232,43,38,.45) 0%,rgba(232,43,38,0) 60%),var(--night)}
.tool-main .tag{font:italic 400 20px/1 var(--serif);color:#ff8a85}
.tool-main h3{font:500 clamp(36px,4vw,52px)/1.05 var(--serif);margin:12px 0 14px}
.tool-main p{color:var(--cream2);max-width:40em}
.tool-main .more{color:var(--cream);white-space:nowrap;text-underline-offset:5px;text-decoration-color:var(--red)}
.tool-list{list-style:none;margin-top:8px}
.tool-list li{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(20px,6vw,100px);padding:22px 0;border-bottom:1px solid var(--rule)}
.tool-list b{font:500 25px/1.2 var(--serif)}
.tool-list span{color:var(--ink2)}
.honest-band{background:linear-gradient(180deg,#1d0908 0%,var(--night2) 100%);color:var(--cream);padding:90px 0}
.honest-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(30px,6vw,100px)}
.honest-grid p{color:var(--cream2);max-width:36em}
.honest-grid p:first-child{font:400 clamp(22px,2.2vw,28px)/1.45 var(--serif);color:var(--cream)}
.honest-grid p+p{margin-top:1.2em}
.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,56px);margin-top:46px;border-top:1px solid var(--ink);padding-top:30px}
.help-grid h3{font:500 28px/1.15 var(--serif);margin-bottom:12px}
.help-grid div:first-child h3{color:var(--wine)}
.help-grid p{color:var(--ink2)}
.biz{scroll-margin-top:100px}
.bizcard{aspect-ratio:1.7;max-width:440px;background:var(--paper);color:var(--ink);padding:26px 28px;border-radius:6px;display:flex;flex-direction:column;position:relative;overflow:hidden;
  box-shadow:0 30px 70px -30px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.04)}
.bizcard:before{content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(232,43,38,.28),rgba(232,43,38,0) 70%)}
.bc-top{display:flex;align-items:center;gap:10px;font:600 13px/1 var(--sans);letter-spacing:.06em;color:var(--mute)}
.bc-dot{width:9px;height:9px;border-radius:50%;background:var(--red)}
.bc-name{font:500 30px/1.05 var(--serif);margin-top:auto}
.bc-role{font:italic 400 17px/1.3 var(--serif);color:var(--wine);margin-top:4px}
.bc-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:16px;padding-top:14px;border-top:1px solid var(--rule)}
.bc-bottom p{font-size:13.5px;line-height:1.5;color:var(--ink2)}
.bc-bottom img{width:74px;height:74px;flex:none}
.bc-actions{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;max-width:440px}
.bc-actions a,.bc-actions button{font:500 16px/1.4 var(--sans);color:var(--cream);background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-decoration-color:rgba(232,43,38,.8);text-underline-offset:5px;text-decoration-thickness:1px}
.bc-actions a:first-child{background:var(--red);text-decoration:none;padding:12px 20px;border-radius:2px}
.contact-grid{align-items:center}
.partner-line{padding:0 0 28px;color:#7d726e;font-size:13.5px}
.partner-line a{color:#b3a7a2;text-decoration:none;border-bottom:1px solid rgba(232,43,38,.6)}
.partner-line a:hover{color:var(--cream)}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,16px);background:var(--cream);color:var(--ink);font:600 15px/1 var(--sans);padding:13px 20px;border-radius:30px;opacity:0;pointer-events:none;transition:.3s;z-index:40}
.toast.on{opacity:1;transform:translate(-50%,0)}
@media (max-width:860px){
  .approach-grid,.honest-grid{grid-template-columns:1fr}
  .tool-main{grid-template-columns:1fr;padding:30px 26px}
  .tool-list li,.approach .know-list div{grid-template-columns:1fr;gap:4px}
  .help-grid{grid-template-columns:1fr}
}
@media (max-width:520px){
  .mail-line a.soft{width:auto;display:inline-block;text-align:left}
  .bizcard{aspect-ratio:auto;min-height:230px;padding:22px}
  .bc-name{font-size:27px;margin-top:28px}
}

/* v6: hero A (imię na pierwszym planie) + telefon */
.hv-a .big-name{font-size:clamp(52px,7vw,96px);line-height:.98}
.hv-a .role-line{font:italic 400 clamp(22px,2.4vw,30px)/1.3 var(--serif);color:#ff8a85;margin-top:14px}
.tel-line{margin-top:14px;font:500 clamp(22px,2.4vw,30px)/1.2 var(--serif)}
.tel-line a{text-decoration:none;color:var(--cream2)}
.tel-line a:hover{color:var(--cream)}

/* v7: menu z przełącznikiem DE/PL, burger, sekcja LumaFlex, pasek kontaktu */
.top .menu{display:flex;align-items:baseline;gap:28px;font-size:15.5px}
.top .menu a{text-decoration:none;color:var(--cream2)}
.top .menu a:hover{color:var(--cream)}
.lang{display:inline-flex;gap:2px;margin-left:6px;padding:3px;border:1px solid rgba(244,238,232,.18);border-radius:30px}
.lang a{font:600 12.5px/1 var(--sans);letter-spacing:.08em;padding:6px 10px;border-radius:30px;color:var(--cream2)!important}
.lang a[aria-current]{background:var(--red);color:#fff!important}
.burger{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;position:relative;margin-right:-8px}
.burger span{position:absolute;left:10px;right:10px;height:2px;background:var(--cream);transition:transform .25s,top .25s}
.burger span:first-child{top:17px}.burger span:last-child{top:26px}
.menu-open .burger span:first-child{top:21px;transform:rotate(45deg)}
.menu-open .burger span:last-child{top:21px;transform:rotate(-45deg)}

.luma{background:radial-gradient(60% 50% at 85% 0%,rgba(232,43,38,.28),rgba(15,12,12,0) 70%),var(--night);color:var(--cream)}
.luma-head .tag{font:italic 400 21px/1 var(--serif);color:#ff8a85}
.luma-head h2{margin-top:12px}
.luma .intro{color:var(--cream2)}
.luma-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px}
.lab{background:rgba(244,238,232,.04);border:1px solid rgba(244,238,232,.1);border-radius:4px;padding:26px 26px 22px}
.lab-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:15px;color:var(--cream2)}
.lab-top output{font:500 30px/1 var(--serif);color:var(--cream)}
.beam-wrap{position:relative;height:180px;display:grid;place-items:center;margin:8px 0 6px}
.beam{position:absolute;inset:0;border-radius:50%;transition:background .2s}
.beam.ir:after{content:"";position:absolute;inset:30%;border-radius:50%;border:1px dashed rgba(244,238,232,.25)}
.band{position:relative;font:italic 400 19px/1.3 var(--serif);color:var(--cream);text-align:center;text-shadow:0 1px 12px rgba(0,0,0,.6)}
#pulse{width:100%;height:180px;display:block;margin:8px 0 6px}
.lab input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:none;cursor:pointer;margin-top:6px}
.lab input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:6px;background:linear-gradient(90deg,#ff9a3c 0%,#e82b26 23%,#7a0e0c 23.5%,#3a1514 100%)}
#freq::-webkit-slider-runnable-track{background:linear-gradient(90deg,rgba(244,238,232,.18),#e82b26)!important}
.lab input[type=range]::-moz-range-track{height:6px;border-radius:6px;background:linear-gradient(90deg,#ff9a3c 0%,#e82b26 23%,#7a0e0c 23.5%,#3a1514 100%)}
#freq::-moz-range-track{background:linear-gradient(90deg,rgba(244,238,232,.18),#e82b26)!important}
.lab input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;margin-top:-10px;border-radius:50%;background:var(--cream);border:4px solid var(--red);box-shadow:0 0 0 6px rgba(232,43,38,.18)}
.lab input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--cream);border:4px solid var(--red)}
.scale{display:flex;justify-content:space-between;font-size:12.5px;color:#8f8480;margin-top:2px}
.lab .note{font-size:14.5px;color:var(--cream2);margin-top:14px}
.faq{margin-top:34px;border-top:1px solid rgba(244,238,232,.14)}
.faq details{border-bottom:1px solid rgba(244,238,232,.14)}
.faq summary{list-style:none;cursor:pointer;padding:20px 40px 20px 0;position:relative;font:500 clamp(21px,2vw,25px)/1.3 var(--serif)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font:300 30px/1 var(--sans);color:#ff6b66;transition:transform .25s}
.faq details[open] summary:after{transform:translateY(-50%) rotate(45deg)}
.faq details p{color:var(--cream2);padding:0 0 22px;max-width:44em}
.luma-cta{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:36px;align-items:center}
.btn-red{display:inline-flex;gap:10px;align-items:center;background:var(--red);color:#fff;text-decoration:none;font:600 17px/1 var(--sans);padding:18px 28px;border-radius:2px;box-shadow:0 12px 34px -14px rgba(232,43,38,.8);transition:background .2s,transform .2s}
.btn-red:hover{background:var(--red-d);transform:translateY(-1px)}
.btn-line{color:var(--cream);font:500 17px/1 var(--sans);text-decoration:none;padding:17px 4px;border-bottom:1px solid rgba(244,238,232,.4)}
.btn-line:hover{border-color:var(--red)}
.luma-note{margin-top:22px;font:italic 400 16px/1.4 var(--serif);color:#9d918c}
.tools-more{margin-top:24px}
.tools-more a{color:var(--wine);text-underline-offset:5px;text-decoration-thickness:1px}
.tool-list li{transition:background .2s,padding .2s}
.tool-list li:hover{background:rgba(232,43,38,.04);padding-left:10px}

.dock{display:none}
.rv{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}

@media (max-width:860px){
  .burger{display:block}
  .top .menu{position:fixed;left:0;right:0;top:66px;bottom:0;flex-direction:column;align-items:flex-start;gap:0;padding:12px 24px 40px;background:var(--night);transform:translateY(-8px);opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s;overflow:auto}
  .menu-open .top .menu{opacity:1;visibility:visible;transform:none}
  .top .menu > a{display:block!important;width:100%;padding:18px 0;border-bottom:1px solid rgba(244,238,232,.1);font:500 28px/1.1 var(--serif);color:var(--cream)}
  .top .menu .lang{margin:26px 0 0}
  .top .menu .lang a{display:inline-block;font-size:15px;padding:10px 18px}
  .menu-open{overflow:hidden}
  .luma-grid{grid-template-columns:1fr}
  .bar{align-items:center}
}
@media (max-width:600px){
  body{padding-bottom:74px}
  .dock{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:rgba(15,12,12,.97);border-top:1px solid rgba(244,238,232,.12);padding:6px 6px calc(6px + env(safe-area-inset-bottom))}
  .dock a{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;color:var(--cream);text-decoration:none;font:500 12.5px/1 var(--sans)}
  .dock svg{width:22px;height:22px}
  .dock a:nth-child(2){color:#ff8a85}
  .lab{padding:22px 18px 18px}
  .beam-wrap,#pulse{height:150px}
  .btn-red{width:100%;justify-content:center}
  .toast{bottom:90px}
}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}
.top{backdrop-filter:none;-webkit-backdrop-filter:none}
.beam{inset:auto;left:50%;top:50%;width:min(100%,220px);aspect-ratio:1;transform:translate(-50%,-50%)}
.frame.has-photo{background:#1c0c0b;border-radius:46% 46% 4px 4px / 30% 30% 4px 4px}
.frame.has-photo:after{border-radius:46% 46% 2px 2px / 30% 30% 2px 2px;z-index:2;border-color:rgba(255,160,150,.22)}
.frame.has-photo picture,.frame.has-photo img{position:absolute;inset:0;width:100%;height:100%;display:block}
.frame.has-photo img{object-fit:cover;object-position:50% 20%}

/* v10: pasek targowy, LumaFlex na pierwszym planie, kafelki, Hamburg */
.topbar{background:var(--red);color:#fff;font:500 14px/1.4 var(--sans);text-align:center}
.topbar .w{padding:9px 0}
.topbar a{color:#fff;font-weight:700;text-underline-offset:3px;white-space:nowrap}
.topbar .pin{display:inline-block;width:8px;height:8px;border-radius:50%;background:#fff;margin-right:8px;vertical-align:1px;animation:ping 2s ease-out infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(255,255,255,.7)}100%{box-shadow:0 0 0 10px rgba(255,255,255,0)}}
.cred{font:500 15px/1.4 var(--sans);color:var(--cream);margin-top:12px;display:inline-block;padding:7px 14px;border:1px solid rgba(255,138,133,.45);border-radius:30px}
.spot{background:var(--paper);padding:90px 0}
.spot-head .tag{font:italic 400 21px/1 var(--serif);color:var(--wine)}
.spot-head h2{margin-top:12px}
.models{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}
.model{background:var(--night);color:var(--cream);border-radius:4px;padding:30px 30px 28px;display:flex;flex-direction:column;position:relative;overflow:hidden}
.model:before{content:"";position:absolute;right:-80px;top:-80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(232,43,38,.5),rgba(232,43,38,0) 70%)}
.model h3{font:500 30px/1.1 var(--serif);position:relative}
.model .price{font:500 44px/1 var(--serif);color:#ff8a85;margin:14px 0 18px;position:relative}
.model ul{list-style:none;margin-bottom:26px;position:relative}
.model li{padding:8px 0;border-bottom:1px solid rgba(244,238,232,.1);color:var(--cream2);font-size:16px}
.model li:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--red);margin-right:10px;vertical-align:2px}
.model .btn-red{margin-top:auto;align-self:flex-start;position:relative}
.terms{margin-top:22px;font:600 15px/1.4 var(--sans);color:var(--ink2)}
.messe-note{margin-top:10px;font:italic 400 19px/1.4 var(--serif);color:var(--wine)}
.small-note{margin-top:10px;font-size:14px;color:var(--mute)}
.small-note a{color:var(--wine);text-underline-offset:3px}
.tiles-sec{padding:0 0 90px;background:var(--paper)}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tile{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);background:var(--paper2);border:1px solid var(--rule);border-radius:4px;padding:26px 24px;transition:border-color .2s,transform .2s,box-shadow .2s}
.tile:hover{border-color:var(--red);transform:translateY(-3px);box-shadow:0 18px 40px -28px rgba(27,22,22,.5)}
.tile .t-tag{font:600 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--wine)}
.tile h3{font:500 25px/1.15 var(--serif);margin:12px 0 8px}
.tile p{color:var(--ink2);font-size:15.5px}
.tile .t-go{margin-top:auto;padding-top:18px;font:600 15px/1 var(--sans);color:var(--red)}
.tile:nth-child(3){background:var(--night);color:var(--cream);border-color:var(--night)}
.tile:nth-child(3) p{color:var(--cream2)}.tile:nth-child(3) .t-tag{color:#ff8a85}.tile:nth-child(3) .t-go{color:#ff8a85}
.hamburg{background:radial-gradient(70% 90% at 0% 100%,rgba(232,43,38,.3),rgba(15,12,12,0) 65%),var(--night);color:var(--cream)}
.hamburg-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(30px,6vw,90px);align-items:center}
.hamburg .tag{font:italic 400 21px/1 var(--serif);color:#ff8a85}
.hamburg h2{margin-top:12px}
.hamburg .intro{color:var(--cream2)}
.hamburg .small-note{color:#9d918c}
.m-card{background:var(--paper);color:var(--ink);border-radius:4px;padding:28px;border-top:3px solid var(--red)}
.m-card dl div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule)}
.m-card dt{font-weight:600}
.m-card dd{font:500 20px/1.2 var(--serif);color:var(--wine);white-space:nowrap}
.m-place{margin-top:16px;color:var(--ink2)}
.m-stand{margin-top:8px;font-weight:600}
.m-route{display:inline-block;margin-top:14px;color:var(--wine);font-weight:600;text-underline-offset:4px}
.scale span{transition:color .2s}.scale span:hover{color:var(--cream)}
@media (max-width:860px){
  .hero .portrait{order:-1;width:100%;max-width:260px;margin:0 auto 14px;justify-self:center}
  .hero-grid{gap:18px}
  .models,.tiles,.hamburg-grid{grid-template-columns:1fr}
  .spot{padding:64px 0}
  .topbar{font-size:13px}
}
@media (prefers-reduced-motion:reduce){.topbar .pin{animation:none}}
:focus-visible{outline:2px solid #ff8a85;outline-offset:3px;border-radius:2px}
a:focus:not(:focus-visible),button:focus:not(:focus-visible),summary:focus:not(:focus-visible){outline:none}
.e404{min-height:70vh;display:flex;flex-direction:column;justify-content:center}
.e404 .luma-cta{margin-top:22px}
.e404 .btn-line{color:var(--night);border-color:rgba(15,12,12,.35)}
