:root{--brown:#21170f;--gold:#b98a3d;--gold2:#d1aa63;--paper:#faf7f1;--ink:#352b24;--muted:#786b60;--line:#d8cdc0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"DM Sans",sans-serif}a{color:inherit;text-decoration:none}header{height:92px;padding:0 3vw;display:flex;align-items:center;gap:3vw;background:linear-gradient(110deg,#2a1c12,#160f0a);color:#fff;position:relative;z-index:4}.logo{color:var(--gold2);display:flex;align-items:center;gap:12px;font-family:"Playfair Display",serif;font-size:13px;line-height:1}.logo-icon{border:2px solid currentColor;border-radius:28px 28px 0 0;width:48px;height:58px;display:grid;place-items:center;font-size:26px}.logo strong{display:block;font-size:27px;letter-spacing:.04em}.logo small{display:block;font-family:"DM Sans";font-size:7px;color:#fff;letter-spacing:.12em;margin-top:5px}nav{margin-left:auto;display:flex;align-items:center;gap:25px}nav a{text-transform:uppercase;font-size:10px;font-weight:600;white-space:nowrap;padding:10px 0}nav .active{color:var(--gold2);border-bottom:2px solid var(--gold)}.head-cta{display:flex;align-items:center;gap:20px}.gold-btn{display:inline-flex;justify-content:center;align-items:center;background:linear-gradient(135deg,var(--gold2),#ae7c2c);color:#25180e;border-radius:3px;padding:14px 20px;text-transform:uppercase;font-weight:700;font-size:10px;letter-spacing:.04em}.phone{display:flex;gap:10px;color:var(--gold2);font-size:18px}.phone span{color:#fff;font-size:14px}.phone small{display:block;color:#bfb5ad;font-size:9px}.hamb{display:none;margin-left:auto;background:none;border:0;color:var(--gold2);font-size:25px}.hero{height:480px;background:url('assets/hero-hrob.png') center/cover;position:relative}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,240,228,.84),rgba(247,240,228,.52) 38%,transparent 65%)}.hero-inner{height:100%;max-width:1240px;margin:auto;position:relative;z-index:1;padding:70px 30px;display:flex;align-items:center}.hero-copy{max-width:600px}.overline{text-transform:uppercase;color:#89601f;font-size:10px;letter-spacing:.14em;font-weight:700}.hero h1{font-family:"Playfair Display";font-size:52px;line-height:.98;margin:16px 0 20px;color:#2d211a}.hero h1 em{font-style:normal;color:#b58433}.hero-copy>p:not(.overline){max-width:540px;font-size:14px;line-height:1.45}.buttons{display:flex;gap:12px;margin-top:24px}.outline-btn{border:1px solid #9a7d5b;padding:13px 20px;border-radius:3px;text-transform:uppercase;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.experience{position:absolute;right:15px;top:90px;border:2px solid var(--gold);outline:1px solid #352518;outline-offset:6px;border-radius:50%;width:105px;height:105px;background:#21160f;color:var(--gold2);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.experience strong{font-family:"Playfair Display";font-size:31px}.experience span{text-transform:uppercase;font-size:8px;line-height:1.4}.benefits{display:grid;grid-template-columns:repeat(4,1fr);max-width:1400px;margin:auto;background:#f3ece3;padding:17px 4vw;border-bottom:1px solid var(--line)}.benefits article{display:flex;gap:16px;align-items:center;padding:0 28px;border-right:1px solid var(--line)}.benefits article:last-child{border:0}.benefits b{font-size:30px;color:#aa7e3c}.benefits strong{display:block;text-transform:uppercase;font-size:10px}.benefits p{margin:5px 0 0;font-size:9px;line-height:1.4;color:var(--muted)}.section{max-width:1400px;margin:10px auto 0;padding:25px 30px}.section-title{text-align:center;margin-bottom:23px}.section-title span,.mini-title span,.quote>span,.contact>div:first-child>span{text-transform:uppercase;font-size:10px;letter-spacing:.1em;font-weight:600}.section-title h2,.contact h2{font-family:"Playfair Display";font-size:31px;margin:6px 0}.service-groups{display:grid;grid-template-columns:1fr 1fr;gap:10px}.service-group,.mid-grid>div,.lower>div{background:#f0e8dd;border:1px solid #e2d8cd;border-radius:7px;padding:16px}.service-group h3{text-align:center;text-transform:uppercase;font-size:10px;font-weight:500;margin:0 0 14px;padding-bottom:9px;border-bottom:1px solid #c7b8a6}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.cards a{text-align:center;font-size:10px}.img{display:block;background-size:cover;background-position:center;border-radius:4px}.cards .img{height:95px;margin-bottom:8px;transition:.25s}.cards a:hover .img{transform:translateY(-3px);filter:brightness(1.08)}.grave1{background-image:url('assets/hero-hrob.png')}.grave2{background-image:url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=500&q=75')}.urn{background-image:url('https://images.unsplash.com/photo-1470770841072-f978cf4d019e?auto=format&fit=crop&w=500&q=75')}.letters{background-image:url('https://images.unsplash.com/photo-1494438639946-1ebd1d20bf85?auto=format&fit=crop&w=500&q=75')}.kitchen{background-image:url('https://images.unsplash.com/photo-1556912172-45b7abe8b7e1?auto=format&fit=crop&w=500&q=75')}.stairs{background-image:url('https://images.unsplash.com/photo-1600566753086-00f18fb6b3ea?auto=format&fit=crop&w=500&q=75')}.fireplace{background-image:url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=500&q=75')}.church{background-image:url('https://images.unsplash.com/photo-1548625361-58a9b86aa83b?auto=format&fit=crop&w=500&q=75')}.mid-grid{display:grid;grid-template-columns:1.05fr 1fr .55fr;gap:10px}.mini-title{display:flex;justify-content:center;align-items:center;margin-bottom:12px;position:relative}.mini-title a{position:absolute;right:0;color:#916526;font-size:9px}.real-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.real-grid .img{height:105px}.r1{background-image:url('assets/hero-hrob.png')}.r2{background-image:url('https://images.unsplash.com/photo-1470770841072-f978cf4d019e?auto=format&fit=crop&w=400&q=70')}.r3{background-image:url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=400&q=70')}.r4{background-image:url('https://images.unsplash.com/photo-1556912172-45b7abe8b7e1?auto=format&fit=crop&w=400&q=70')}.process ol{display:flex;list-style:none;padding:20px 0 0;margin:0;justify-content:space-between;position:relative}.process ol:before{content:"";height:1px;background:#ac9274;position:absolute;top:39px;left:8%;right:8%}.process li{text-align:center;z-index:1;width:20%}.process li b{width:40px;height:40px;background:#f5eee5;border:1px solid #96744c;border-radius:50%;display:grid;place-items:center;margin:auto;color:#855c27}.process li span{display:block;font-size:8px;text-transform:uppercase;margin-top:8px}.quote{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.quote p{font-size:10px;line-height:1.4}.lower{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}.reviews{display:grid;grid-template-columns:repeat(3,1fr)}blockquote{text-align:center;margin:0;padding:5px 20px;font-size:10px;line-height:1.5;border-right:1px solid var(--line)}blockquote:last-child{border:0}blockquote strong,blockquote small{display:block}blockquote strong{color:#b28234;font-size:14px;margin-top:8px}blockquote small{color:var(--muted)}.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.swatches i{display:block;height:52px;border-radius:4px;background-size:cover}.swatches small{display:block;text-align:center;font-size:8px;margin-top:5px}.s1{background:#111}.s2{background:linear-gradient(120deg,#eee,#aaa,#eee)}.s3{background:#464645}.s4{background:linear-gradient(130deg,#332920,#786453,#342b23)}.s5{background:linear-gradient(130deg,#806c5a,#4a3b32,#9c8065)}.contact{background:#ede3d7;display:grid;grid-template-columns:1fr 1.1fr auto;align-items:center;gap:40px;border-radius:7px}.contact h2{margin:5px 0}.contact-list{display:grid;grid-template-columns:1fr 1fr;font-size:11px}.contact-list p{margin:7px}.contact-list b{color:#aa7a31;margin-right:8px}footer{margin-top:10px;background:linear-gradient(110deg,#291c13,#160e09);color:#cfc4ba;display:grid;grid-template-columns:1.1fr repeat(3,.7fr) auto;gap:45px;padding:35px 5vw;font-size:9px;align-items:start}footer>div{display:flex;flex-direction:column;gap:7px}footer>div b{text-transform:uppercase;color:#fff;font-size:9px}footer .logo strong{font-size:22px}footer .logo-icon{width:38px;height:47px}footer>small{align-self:end}
@media(max-width:1120px){header nav{display:none}.hamb{display:block}.head-cta>.gold-btn{display:none}.benefits article{padding:0 12px}.mid-grid{grid-template-columns:1fr 1fr}.quote{grid-column:1/-1;min-height:150px}.hero h1{font-size:46px}.hero:after{background:linear-gradient(90deg,rgba(247,240,228,.9),rgba(247,240,228,.5) 55%,transparent 78%)}header nav.open{display:flex;position:absolute;top:92px;left:0;right:0;background:#21170f;flex-direction:column;padding:25px;margin:0}}
@media(max-width:760px){header{height:76px}.logo strong{font-size:22px}.logo-icon{width:40px;height:50px}.head-cta{display:none}header nav.open{top:76px}.hero{height:650px;background-position:64% center}.hero:after{background:linear-gradient(180deg,rgba(247,240,228,.92),rgba(247,240,228,.73) 50%,rgba(247,240,228,.05) 78%)}.hero-inner{align-items:flex-start;padding:45px 24px}.hero-copy{max-width:100%}.hero h1{font-size:40px}.hero-copy>p:not(.overline){font-size:13px}.buttons{flex-direction:column;align-items:stretch;max-width:300px}.experience{right:25px;top:auto;bottom:25px}.benefits{grid-template-columns:1fr 1fr;padding:8px}.benefits article{border-right:0;border-bottom:1px solid var(--line);padding:14px 10px}.benefits article:nth-last-child(-n+2){border-bottom:0}.section{padding:24px 12px}.service-groups,.mid-grid,.lower{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.cards .img{height:125px}.quote{grid-column:auto}.real-grid{grid-template-columns:1fr 1fr}.real-grid .img{height:125px}.process ol:before{display:none}.process ol{display:grid;grid-template-columns:repeat(5,1fr)}.contact{grid-template-columns:1fr;gap:15px}.contact-list{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr;gap:25px}footer .logo,footer>small{grid-column:1/-1}}

/* Originálna textová značka z kamenarstvohospol.sk */
.logo{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:155px;font-family:"Playfair Display",serif;line-height:.88;color:var(--gold2)}.logo>span{font-size:16px;letter-spacing:.025em}.logo strong{font-size:34px;letter-spacing:.035em}.logo-icon,.logo small{display:none}footer .logo>span{font-size:13px}footer .logo strong{font-size:28px}@media(max-width:760px){.logo>span{font-size:13px}.logo strong{font-size:27px}}

/* Farebná paleta podľa dodanej referencie */
:root{--brown:#160f09;--gold:#b3843e;--gold2:#cba35d;--paper:#f4ede3;--ink:#21170f;--muted:#6d5b4b;--line:#cdbb9f}
body{background:linear-gradient(110deg,#f7f1e9,#eee2d3 48%,#f7f1e9);color:var(--ink)}
header,footer{background:linear-gradient(110deg,#21150d,#110b07 55%,#28190e)}
.hero:after{background:linear-gradient(90deg,rgba(9,7,4,.75) 0%,rgba(13,10,6,.49) 42%,rgba(10,8,5,.08) 68%)}
.hero h1{color:#fff}.hero h1 em{color:var(--gold2)}.overline{color:var(--gold2)}.hero-copy>p:not(.overline){color:#fff}.outline-btn{border-color:#b78b4b}.hero .outline-btn{color:#fff;background:rgba(20,13,8,.32)}
.gold-btn{background:linear-gradient(135deg,#cda65f,#a97831);color:#1c120a}.experience{background:#181008;color:var(--gold2);border-color:var(--gold2)}
.benefits{background:#f8f3ed}.service-group,.mid-grid>div,.lower>div,.contact{background:rgba(235,224,211,.78);border-color:#d7c6af}.process li b{background:#f5ede2;border-color:#a77d48;color:#6c4927}.quote .gold-btn{background:#2a1a0f;color:#fff}.swatches i{border:1px solid #9b856d}
@media(max-width:760px){.hero:after{background:linear-gradient(180deg,rgba(10,7,4,.82) 0%,rgba(12,9,5,.63) 52%,rgba(10,7,4,.08) 82%)}}

.phone{flex-shrink:0;align-items:center}.phone>span{display:block;white-space:nowrap;min-width:max-content;line-height:1.15}.phone>span small{white-space:nowrap;margin-top:3px}

.materials-only{grid-template-columns:1fr}.materials-only .materials{grid-column:1/-1}.materials-only .swatches{gap:14px}.materials-only .swatches i{height:82px}.materials-only .swatches small{font-size:9px}
@media(max-width:760px){.materials-only .swatches{grid-template-columns:repeat(2,1fr);gap:10px}.materials-only .swatches a:last-child{grid-column:1/-1}.materials-only .swatches i{height:86px}}
.head-cta>.gold-btn{padding:10px 15px;font-size:9px;line-height:1.2}.contact{grid-template-columns:1fr auto}.contact-list{max-width:720px}
.mid-grid{grid-template-columns:1.05fr .95fr}.lower{grid-template-columns:1.2fr 1fr .55fr}.mid-grid .materials{display:flex;flex-direction:column;justify-content:center}@media(max-width:1120px){.lower{grid-template-columns:1fr 1fr}.lower .quote{grid-column:1/-1;min-height:150px}}@media(max-width:760px){.mid-grid,.lower{grid-template-columns:1fr}.lower .quote{grid-column:auto}}
.hero{background-image:url('assets/hero-cierny-pomnik-v2.webp');background-position:center;background-size:cover}
@media(min-width:761px){.hero-inner{z-index:5}.hero-copy{transform:translateY(-28px)}.experience{top:70px;right:min(25px,calc((1240px - 100vw)/2 + 65px));bottom:auto;z-index:6}}
@media(min-width:1121px){header nav a{font-size:11px;font-weight:700;letter-spacing:.012em}.head-cta>.gold-btn{padding:8px 12px;font-size:9.5px;font-weight:700;line-height:1.15}}
@media(min-width:1121px){header nav{gap:22px}header nav a{color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.018em;text-shadow:0 0 .35px currentColor}header nav a.active{color:var(--gold2)}}
.mid-grid.materials-only{grid-template-columns:1fr;max-width:680px}.mid-grid.materials-only .materials{min-height:140px}.swatches a{color:inherit;text-decoration:none}.swatches a i{transition:transform .3s}.swatches a:hover i{transform:scale(1.04)}

/* Čitateľnejšia typografia informačných častí mimo hero sekcie */
.benefits strong{font-size:12px;font-weight:700}.benefits p{font-size:11px;line-height:1.5}.section-title span,.mini-title span{font-size:11.5px;font-weight:700;letter-spacing:.12em}.service-group h3{font-size:12px;font-weight:700;letter-spacing:.04em}.cards a{font-size:12px;font-weight:600;line-height:1.35}.mini-title a{font-size:10.5px;font-weight:600}.reviews blockquote{font-size:12px;line-height:1.6}.reviews blockquote small{font-size:10.5px}.process li span{font-size:10px;font-weight:600;line-height:1.35}.quote p{font-size:12px;line-height:1.55}.contact-list{font-size:12.5px;line-height:1.45}.swatches small,.materials-only .swatches small{font-size:10.5px;font-weight:600;line-height:1.3}.outline-btn,.section .gold-btn{font-size:10.5px}.lower>div,.mid-grid>div,.service-group{padding:19px}footer{font-size:10.5px;line-height:1.45}footer>div b{font-size:10.5px}.mid-grid.materials-only{max-width:1400px;width:100%}
@media(max-width:760px){.benefits strong{font-size:11px}.benefits p{font-size:10.5px}.cards a{font-size:11.5px}.contact-list{font-size:12px}.reviews blockquote{font-size:11.5px;padding:8px 12px}.process li span{font-size:9px}.lower>div,.mid-grid>div,.service-group{padding:16px}}

.nav-dropdown{position:relative}.nav-dropdown>a{display:flex;align-items:center;gap:5px}.nav-chevron{color:var(--gold2);font-size:12px;line-height:1}.nav-menu{position:absolute;z-index:20;top:100%;left:50%;display:none;min-width:220px;padding:7px;background:#1b110b;border:1px solid rgba(203,163,93,.35);border-radius:4px;box-shadow:0 14px 35px rgba(0,0,0,.28);transform:translateX(-50%)}.nav-dropdown:hover .nav-menu,.nav-dropdown:focus-within .nav-menu{display:grid}.nav-menu a{display:block;padding:10px 12px;color:#f6efe7;font-size:10.5px!important;font-weight:650!important;line-height:1.25;letter-spacing:.02em!important;text-transform:none;border:0!important;border-radius:2px}.nav-menu a:hover,.nav-menu a:focus-visible{color:var(--gold2);background:rgba(203,163,93,.1)}
@media(min-width:1121px){header nav{gap:18px}}
@media(max-width:1120px){header nav.open{align-items:stretch;gap:3px;max-height:calc(100vh - 92px);overflow-y:auto}.nav-dropdown{width:min(360px,100%);margin:auto}.nav-dropdown>a{justify-content:center}.nav-dropdown .nav-menu{position:static;display:grid;width:100%;min-width:0;margin:0 0 8px;padding:5px;transform:none;box-shadow:none;background:rgba(255,255,255,.04)}.nav-menu a{text-align:center;padding:9px 12px}}
@media(max-width:760px){header nav.open{max-height:calc(100vh - 76px)}}
/* Navigačné roletky musia zostať nad hero obsahom po celej svojej výške. */
header{z-index:50}

/* Odkaz na samostatný orientačný cenník */
.price-teaser{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:34px 42px;background:linear-gradient(115deg,#2b1c12,#160e09);border:1px solid rgba(185,138,61,.45);border-radius:7px;color:#f8f2ea}.price-teaser>div{max-width:850px}.price-teaser span{text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--gold2)}.price-teaser h2{margin:8px 0 9px;font:600 clamp(27px,3vw,40px)/1.08 "Playfair Display",serif}.price-teaser p{max-width:760px;margin:0;color:#d3c7bb;font-size:12.5px;line-height:1.6}.price-teaser .outline-btn{flex:0 0 auto;border-color:var(--gold);color:#f8f2ea}.price-teaser .outline-btn:hover{background:var(--gold);color:#21170f}
@media(max-width:760px){.price-teaser{align-items:flex-start;flex-direction:column;gap:24px;padding:30px 24px}.price-teaser .outline-btn{width:100%}}
@media(min-width:1121px) and (max-width:1450px){header{padding-left:2vw;padding-right:2vw;gap:2vw}header nav{gap:14px}.head-cta .phone{display:none}}

/* Schválené logo Kamenárstva HOSPOL */
.logo{
  position:relative;
  display:block;
  flex:0 0 220px;
  width:220px;
  height:74px;
  min-width:0;
  background:url('assets/logo-hospol-modern-schody.svg') center/contain no-repeat;
  filter:brightness(1.1) saturate(1.08) drop-shadow(0 0 7px rgba(203,163,93,.12));
}
.logo>span,
.logo>strong{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.logo:focus-visible{
  outline:2px solid var(--gold2);
  outline-offset:5px;
  border-radius:2px;
}
footer .logo{
  width:220px;
  height:74px;
}
@media(min-width:1121px) and (max-width:1450px){
  .logo{
    flex-basis:200px;
    width:200px;
    height:67px;
  }
}
@media(max-width:760px){
  .logo{
    flex-basis:176px;
    width:176px;
    height:59px;
  }
  footer .logo{
    width:196px;
    height:66px;
  }
}
