
/* Azyl nad Strumykiem — editorial visual language adapted to Grupa Bieszczady */
:root{--paper:#f8f7f2;--soft:#e9ecdd;--ink:#1c3029;--muted:#66756b;--line:#dfe2d9;--accent:#798b66;--glass:#ffffff21}
body{background:var(--paper);color:var(--ink);font-size:15px}
section.section{padding-block:56px}
.sectionhead{margin-bottom:28px}
.page-intro{padding-block:44px 24px}
h1,h2,h3{letter-spacing:-.04em}
.header{background:linear-gradient(120deg,#ffffffc7,#f8f7f2b3);color:#1c3029;backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);border-bottom:1px solid #ffffffad;box-shadow:0 6px 28px #193a3012,inset 0 1px 0 #ffffffd9}
.header .navlinks>a:not(.button):hover{color:#254d37}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.header{background:#f8f7f2}}
.nav{min-height:92px}.brand strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(22px,2vw,29px)}
.topline{background:#193a30;color:#edf0e3;letter-spacing:.16em}
.navlinks>a:not(.button){position:relative}.navlinks>a:not(.button)::after{content:"";height:1px;position:absolute;bottom:7px;left:0;width:0;background:currentColor;transition:width .28s ease}
.navlinks>a:not(.button):hover::after{width:100%}
.button{position:relative;overflow:hidden;background:transparent;color:#193a30;border:1px solid #193a307a;border-radius:5px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .25s,color .25s,border-color .25s,transform .25s,box-shadow .25s;will-change:transform}
.button:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 22%,#ffffff3b 50%,transparent 78%);transform:translateX(-120%);transition:transform .65s ease;pointer-events:none}
.button:hover{background:#193a30;color:#fff;border-color:#193a30;transform:translateY(-2px);box-shadow:0 12px 28px #17382b18}
.button:hover:before{transform:translateX(120%)}.button.light{background:#ffffff0d;color:#193a30;border-color:#193a306c}
.button.light:hover{background:#193a30;color:#fff;border-color:#193a30}
.hero.wrap{position:relative;display:flex;align-items:center;max-width:none;min-height:650px;padding:90px max(6vw,calc((100vw - 1320px)/2)) 115px;isolation:isolate;overflow:hidden;margin:0;color:#fff}
.hero-copy{position:relative;z-index:3;width:min(690px,95%);padding:0}
.hero-copy .eyebrow{color:#f0eee1;letter-spacing:.18em}
.hero h1{font-size:clamp(3.5rem,6.9vw,7.2rem);line-height:1.04;letter-spacing:-.055em}
.hero h1 em{color:#dce2ba}
.hero p{font-size:clamp(14px,1.2vw,18px);line-height:1.9;color:#f3f2e7;max-width:560px;margin-top:25px}
.hero-visual{position:absolute;z-index:-1;inset:0;width:100%;height:100%;min-height:0;pointer-events:none}
.hero-visual>img{height:100%;width:100%;object-fit:cover;object-position:center 48%;border-radius:0;transform:scale(1.012)}
.hero-visual:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0e2b24ed 0%,#123328c2 41%,#0b2b2039 100%),linear-gradient(0deg,#11291ab3,transparent 50%);pointer-events:none}
.hero-visual:after{display:none}
.hero-visual .visual-note{z-index:2;position:absolute;right:5.5vw;left:auto;bottom:38px;max-width:none;padding:0;color:#edf0e9;background:none;box-shadow:none;font:italic 19px/1.3 Georgia,'Times New Roman',serif;text-align:right}
.hero-visual .visual-note small{color:#dfe4d8}
.hero .actions .button{color:#fff;border-color:#ffffff8c;background:#ffffff24;box-shadow:none}
.hero .actions .button.light{background:#ffffff0d;color:#fff;border-color:#ffffff80}
.hero .actions .button:hover{background:#f5f4e9;color:#193a30;border-color:#f5f4e9}
.factsbar{background:#f8f7f2;margin-top:0;border-block-color:#dde2d5}
.factsbar>div{font:20px/1.4 Georgia,'Times New Roman',serif}
.sectionhead .eyebrow,.eyebrow{letter-spacing:.19em}
.sectionhead h2 em{color:#728565}
.cards.azyl-two-places{display:grid;grid-template-columns:1fr!important;gap:34px}
.cards.azyl-two-places .card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-rows:minmax(115px,auto) auto auto 1fr;column-gap:0;min-height:475px;padding:0;border:1px solid #dce2d7;border-radius:9px;background:#f2f1e9;overflow:hidden;box-shadow:0 8px 34px #1c30290b;transition:transform .3s,box-shadow .3s}
.cards.azyl-two-places .card:hover{transform:translateY(-5px);box-shadow:0 22px 48px #1c302918}
.cards.azyl-two-places .card .card-art{grid-column:1;grid-row:1/5;display:block;position:relative;width:100%;height:100%;min-height:475px;aspect-ratio:auto;overflow:hidden;border-radius:0;background:#dae4d9}
.cards.azyl-two-places .card .card-art img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.cards.azyl-two-places .card:hover .card-art img{transform:scale(1.055)}
.cards.azyl-two-places .card>.eyebrow,.cards.azyl-two-places .card>h3,.cards.azyl-two-places .card>p,.cards.azyl-two-places .card>.textlink{grid-column:2;margin-inline:clamp(28px,5vw,76px)}
.cards.azyl-two-places .card>.eyebrow{grid-row:1;margin-top:0;margin-bottom:0;align-self:end;color:#65735d}
.cards.azyl-two-places .card>h3{grid-row:2;margin-top:22px;font-size:clamp(2.1rem,3.3vw,4.2rem);line-height:1.1}
.cards.azyl-two-places .card>p{grid-row:3;font-size:14px;line-height:1.85;color:#5c6b60;margin-top:22px;margin-bottom:24px}
.cards.azyl-two-places .card>.textlink{grid-row:4;align-self:start;font-size:13px;display:inline-flex;justify-self:start;border:1px solid #193a306f;border-radius:5px;padding:8px 19px;transition:background .25s,color .25s}
.cards.azyl-two-places .card>.textlink:hover{background:#193a30;color:#fff}
.cards.azyl-two-places .card:nth-child(even){grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.cards.azyl-two-places .card:nth-child(even) .card-art{grid-column:2}
.cards.azyl-two-places .card:nth-child(even)>.eyebrow,.cards.azyl-two-places .card:nth-child(even)>h3,.cards.azyl-two-places .card:nth-child(even)>p,.cards.azyl-two-places .card:nth-child(even)>.textlink{grid-column:1}
.cards.azyl-two-places .card .label{background:#f8f7f2e0;color:#193a30}
.story-image img,.property-hero img{border-radius:8px}
.tinted{background:#ecf0e7}
.quote{padding-block:50px}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;align-items:stretch}
.gallery-grid figure,.gallery-grid figure:nth-child(3n+2){display:flex;flex-direction:column;min-width:0;margin:0;padding-top:0;overflow:hidden;border-radius:7px;background:#eeefe9}
.gallery-grid a{flex:none;aspect-ratio:4/3;border-radius:7px 7px 0 0}
.gallery-grid img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .55s ease}
.gallery-grid figure:hover img{transform:scale(1.04)}
.gallery-grid figcaption{flex:1;min-height:calc(3em + 33px);padding:15px 15px 18px;line-height:1.5;overflow-wrap:anywhere}
.gallery-collection{margin-top:36px}.gallery-collection h2{font-size:clamp(2.2rem,4vw,4rem);margin-bottom:22px}
.gallery-collection p{color:#66756b;font-size:13px;margin-bottom:24px}
.gallery-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;align-items:start}
.gallery-preview a:nth-child(n){display:block;min-width:0;padding-top:0;aspect-ratio:4/3;border-radius:7px}
.gallery-preview a:nth-child(n) img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:7px}
.booking{border-radius:7px;background:#e9ecdd}
.booking .button{color:#193a30}
.contact{background:#193a30}.contact .button.white{background:#ffffff14;color:#fff;border-color:#ffffffad}
.contact .button.white:hover{background:#f5f3e8;color:#193a30}
.azyl-memories{background:#193a30}
.azyl-memories .eyebrow{color:#dae3c7}
.azyl-memories h2 em{color:#dce2ba}
.azyl-memories .azyl-memories-note{border-left-color:#dce2ba}
.footer{background:#f8f7f2;border-top:1px solid #dfe2d9}
@media(min-width:1280px){.cards.azyl-two-places .card{min-height:530px}.cards.azyl-two-places .card .card-art{min-height:530px}}
@media(max-width:760px){
 section.section{padding-block:34px}
 .sectionhead{margin-bottom:22px}
 .page-intro{padding-block:28px 18px}
 .quote{padding-block:32px}
 .navlinks{background:#f8f7f2ed;backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);border-bottom-color:#ffffffad;box-shadow:0 12px 24px #193a3014}
 .hero.wrap{min-height:620px;padding:90px 6vw 115px;align-items:flex-end}
 .hero h1{font-size:clamp(3.5rem,13vw,5.4rem)}
 .hero-copy{width:100%}
 .hero-visual .visual-note{bottom:23px;right:6vw;display:none}
 .hero-visual:before{background:linear-gradient(0deg,#0c251eea 0%,#0d2b238c 65%,#14362842 100%)}
 .hero .actions{gap:10px}
 .hero .actions .button{font-size:11px;padding:12px 16px;min-height:48px}
 .cards.azyl-two-places .card,.cards.azyl-two-places .card:nth-child(even){display:flex;flex-direction:column;min-height:0}
 .cards.azyl-two-places .card .card-art{height:auto;min-height:0;aspect-ratio:4/3;flex-shrink:0}
 .cards.azyl-two-places .card>.eyebrow,.cards.azyl-two-places .card>h3,.cards.azyl-two-places .card>p,.cards.azyl-two-places .card>.textlink{margin-inline:24px}
 .cards.azyl-two-places .card>.eyebrow{margin-top:25px;font-size:9px}
 .cards.azyl-two-places .card>h3{margin-top:13px;font-size:clamp(2rem,8vw,3rem)}
 .cards.azyl-two-places .card>p{margin-top:12px;margin-bottom:22px}
 .cards.azyl-two-places .card>.textlink{margin-bottom:25px}
 .gallery-grid,.gallery-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .gallery-grid figcaption{font-size:10px}
 .gallery-collection{margin-top:24px}
}
@media(max-width:460px){.hero.wrap{min-height:580px}.gallery-grid,.gallery-preview{grid-template-columns:1fr}.hero .actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){.button,.card,.card img,.gallery-grid img{transition:none!important;transform:none!important}}

/* Keep the two separate photo collections visible and spacious. */
.gallery-collection:first-child{margin-top:0}
.gallery-collection+.gallery-collection{padding-top:28px;border-top:1px solid var(--line)}
.gallery-collection .gallery-grid{margin-top:20px}
@media(max-width:760px){.gallery-collection+.gallery-collection{padding-top:22px}}

/* Frosted glass controls on both light surfaces and photographic backgrounds. */
:root{--control-glass:linear-gradient(135deg,#ffffffa8,#ffffff38 48%,#dce8d64d);--control-border:#ffffffc9;--control-shadow:0 8px 24px #193a3014,inset 0 1px 0 #ffffffeb,inset 0 -1px 0 #193a300d}
.button,.button.light,.cards.azyl-two-places .card>.textlink,.menubtn,.lightbox button{
 position:relative;overflow:hidden;border:1px solid var(--control-border);border-radius:12px;
 background:var(--control-glass);color:#193a30;box-shadow:var(--control-shadow);
 backdrop-filter:blur(12px) saturate(145%);-webkit-backdrop-filter:blur(12px) saturate(145%);
 transition:background .25s,box-shadow .25s,transform .25s,border-color .25s;
}
.button:hover,.button.light:hover,.cards.azyl-two-places .card>.textlink:hover,.menubtn:hover,.lightbox button:hover{
 background:linear-gradient(135deg,#ffffffed,#eef5e7a6);color:#193a30;border-color:#fff;
 box-shadow:0 12px 30px #193a3024,inset 0 1px 0 #fff;transform:translateY(-2px);
}
.hero .actions .button,.hero .actions .button.light,.contact .button.white,.lightbox button{
 background:linear-gradient(135deg,#ffffff40,#ffffff14 55%,#ffffff26);color:#fff;border-color:#ffffff8c;
 box-shadow:0 8px 24px #071e2221,inset 0 1px 0 #ffffff7a,inset 0 -1px 0 #ffffff1f;
}
.hero .actions .button:hover,.contact .button.white:hover{background:linear-gradient(135deg,#ffffffd9,#ffffffa6);color:#193a30}
.button:focus-visible,.cards.azyl-two-places .card>.textlink:focus-visible,.menubtn:focus-visible,.lightbox button:focus-visible{outline:3px solid #8aab60;outline-offset:4px}
.button:active,.cards.azyl-two-places .card>.textlink:active,.menubtn:active,.lightbox button:active{transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.button:before{transition:none;transform:none;background:none}.menubtn,.lightbox button{transition:none!important;transform:none!important}}
.owner-section{padding-block:28px}.owner-section h2{max-width:900px;margin-bottom:22px;font-size:clamp(2rem,4vw,3.6rem)}
.owner-section>p{max-width:850px;line-height:1.9;color:var(--muted);margin-block:18px}
.owner-features{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 36px}
.owner-features li{padding:20px 0;border-top:1px solid var(--line);display:grid;gap:9px}.owner-features strong{font:24px/1.25 Georgia,serif}.owner-features span{color:var(--muted);line-height:1.8}
@media(max-width:760px){.owner-features{grid-template-columns:1fr;gap:8px}.owner-section{padding-block:20px}}
@media(prefers-reduced-transparency:reduce){.header,.navlinks{background:#f8f7f2;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* Roomadmin sits directly below each property's main photograph. */
.booking-inline{padding-block:24px 28px;scroll-margin-top:120px}
.booking-glass{position:relative;isolation:isolate;overflow:hidden;margin-top:0;padding:28px;border:1px solid #ffffffd9;border-radius:18px;background:#f3f5ee;box-shadow:0 14px 40px #193a3012,inset 0 1px 0 #fff}
.booking-glass:before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(120deg,#f8f7f2b8,#edf1e3d6),var(--booking-photo);background-size:cover;background-position:center}
.booking-glass:after{content:"";position:absolute;inset:0;z-index:-1;background:#ffffff40;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.booking-intro{max-width:850px;margin-bottom:22px}
.booking-intro .eyebrow{margin-bottom:12px;color:#35523e}
.booking-intro h2{font-size:clamp(2rem,3.5vw,3.4rem);margin-bottom:14px}
.booking-intro .booking-demo-note{max-width:820px;color:#344a3d;font-size:13px;line-height:1.75}
.booking-demo-note a{font-weight:600}
.booking-widget{padding:18px;border:1px solid #ffffffd9;border-radius:14px;background:#ffffffb8;box-shadow:inset 0 1px 0 #fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.booking-glass .booking-frame{display:block;width:100%;height:180px;min-height:120px;margin:0;border:0;border-radius:8px;background:transparent;scroll-margin-top:120px}
@media(max-width:760px){.booking-inline{padding-block:18px}.booking-glass{padding:20px 12px;border-radius:14px}.booking-intro{padding-inline:6px;margin-bottom:18px}.booking-widget{padding:8px;border-radius:10px}.booking-glass .booking-frame{height:420px;min-height:260px}}
@media(prefers-reduced-transparency:reduce){.booking-glass:after,.booking-widget{background:#f8f7f2;backdrop-filter:none;-webkit-backdrop-filter:none}}
