/* Vital Pomza — pumice components on the Vital design system (Vital tokens + the M3 layer in m3.css).
   Accent: volcanic basalt and lava tones, used sparingly next to Vital blue. */
:root{--pf-basalt:#14161c;--pf-basalt-2:#1f232b;--pf-lava:#c2410c;--pf-lava-soft:#fff1e8;--pf-ink:var(--v-ink,#172536);--pf-mut:var(--v-muted,#536170);--pf-line:var(--v-line,#dde3ea);--pf-sur:var(--v-surface,#f5f7f9);--pf-p:var(--v-primary,#2c28dd);--pf-cyan:var(--v-cyan,#00c9ff)}

/* ---------------------------------------------------------------- home hero: quarry photo + price tool */
.pf-home-hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;background:var(--pf-basalt);padding:clamp(40px,6vw,96px) 0 clamp(48px,6vw,104px)}
.pf-home-hero-bg{position:absolute;inset:0;z-index:-1}
.pf-home-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:60% 50%;transform-origin:62% 48%;animation:pf-kenburns 28s ease-in-out infinite alternate}
.pf-home-hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,14,22,.92) 0%,rgba(12,14,22,.78) 38%,rgba(12,14,22,.35) 72%,rgba(12,14,22,.25) 100%),linear-gradient(0deg,rgba(12,14,22,.55),transparent 40%)}
@keyframes pf-kenburns{from{transform:scale(1.02)}to{transform:scale(1.12)}}
@media (prefers-reduced-motion:reduce){.pf-home-hero-bg img{animation:none}}
.pf-home-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,72px);align-items:center}
.pf-home-hero .v-eyebrow{color:#9cecff}
.pf-home-hero h1{margin:0;font-size:calc(clamp(42px,4.8vw,68px) * var(--vs-fs-display,1));line-height:1.04;letter-spacing:-.05em;font-weight:500;color:#fff}
.pf-home-hero .v-lead{color:#d6dee8;max-width:600px}
.pf-home-hero .v-actions{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
.pf-link-light{color:#fff!important}
.pf-hero-trust{list-style:none;margin:40px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.pf-hero-trust li{display:flex;flex-direction:column;gap:2px;padding:12px 18px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px)}
.pf-hero-trust strong{font-size:17px;font-weight:600;letter-spacing:-.01em}.pf-hero-trust span{font-size:12.5px;color:#b9c6d4}
.pf-home-hero-tool .pf-est{box-shadow:0 40px 80px -40px rgba(0,0,0,.7)}

/* ---------------------------------------------------------------- price estimator [pf_fiyat] */
.pf-est{background:#fff;color:var(--pf-ink);border:1px solid var(--pf-line);border-radius:var(--md-sys-shape-corner-extra-large,28px);padding:clamp(20px,2.6vw,30px);box-shadow:var(--md-sys-elevation-1,0 1px 3px rgba(23,37,54,.12))}
.pf-est-title{margin:0 0 16px;font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--pf-ink)}
.pf-est-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pf-est-form label{display:block;font-size:12.5px;font-weight:500;color:var(--pf-mut)}
.pf-est-form label:last-child{grid-column:1/-1}
.pf-est-form select,.pf-est-form input{display:block;width:100%;box-sizing:border-box;margin-top:6px;height:52px;padding:0 14px;border:1px solid var(--md-sys-color-outline,#7f8b99);border-radius:var(--md-sys-shape-corner-small,8px);background:#fff;font:inherit;font-size:16px;color:var(--pf-ink)}
.pf-est-form select:focus,.pf-est-form input:focus{outline:0;border-color:var(--pf-p);box-shadow:inset 0 0 0 1px var(--pf-p)}
.pf-qty{position:relative;display:block}.pf-qty input{padding-right:64px}
.pf-qty em{position:absolute;right:14px;top:50%;transform:translateY(-25%);font-style:normal;font-size:14px;color:var(--pf-mut);pointer-events:none}
.pf-est-out{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 16px}
.pf-est-out>div{padding:12px 14px;border-radius:14px;background:var(--md-sys-color-surface-container-high,#edf1f5);min-width:0}
.pf-est-out span{display:block;font-size:11.5px;color:var(--pf-mut);letter-spacing:.01em}
.pf-est-out strong{display:block;font-size:15px;font-weight:600;color:var(--pf-ink);margin-top:3px;overflow-wrap:anywhere}
.pf-est-out .pf-est-main{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:16px 18px;background:linear-gradient(120deg,#eef0ff 0%,#e6fbff 100%)}
.pf-est-out .pf-est-main span{width:100%;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:11px;color:var(--pf-p)}
.pf-est-out .pf-est-main strong{font-size:clamp(26px,3vw,34px);letter-spacing:-.03em;margin:0;white-space:nowrap}
.pf-est-out .pf-est-main em{font-style:normal;font-size:13px;color:var(--pf-mut)}
.pf-est-out .pf-est-main+div,.pf-est-out .pf-est-main~div:nth-child(4){grid-column:span 2}
.pf-est-foot .v-btn{width:100%}
.pf-note{margin:12px 0 0;font-size:12px;line-height:1.5;color:var(--pf-mut)}
.pf-est.is-loading .pf-est-out{opacity:.6}
.pf-est--compact .pf-est-out{grid-template-columns:1fr 1fr}.pf-est--compact .pf-est-out .pf-est-main+div{grid-column:auto}
.pf-est--compact .pf-est-out>div:nth-child(n+4){display:none}

/* ---------------------------------------------------------------- products */
.pf-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.pf-product{display:flex;flex-direction:column;border-radius:var(--md-sys-shape-corner-large,16px);overflow:hidden;background:#fff;border:1px solid var(--pf-line);color:var(--pf-ink);text-decoration:none;transition:box-shadow .2s,transform .2s,border-color .2s}
.pf-product:hover{box-shadow:var(--md-sys-elevation-2,0 8px 24px rgba(23,37,54,.12));transform:translateY(-3px);border-color:transparent}
.pf-product-media{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--pf-basalt)}
.pf-product-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pf-product:hover .pf-product-media img{transform:scale(1.05)}
.pf-product-body{display:flex;flex-direction:column;gap:6px;padding:18px 20px 20px;flex:1}
.pf-product-body small{font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--pf-mut)}
.pf-product-body strong{font-size:19px;font-weight:600;letter-spacing:-.015em}
.pf-product-body>span{font-size:14px;line-height:1.55;color:var(--pf-mut)}
.pf-product-body b{margin-top:auto;padding-top:10px;font-size:14px;font-weight:600;color:var(--pf-lava)}

/* ---------------------------------------------------------------- process (ocaktan şantiyeye) */
.pf-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:pf}
.pf-steps li{display:flex;flex-direction:column;gap:6px}
.pf-steps figure{margin:0 0 10px;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:var(--pf-basalt)}
.pf-steps img{width:100%;height:100%;object-fit:cover}
.pf-steps span{font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--pf-p)}
.pf-steps h3{margin:0;font-size:18px;letter-spacing:-.01em}
.pf-steps p{margin:0;font-size:14.5px;line-height:1.55;color:var(--pf-mut)}

/* ---------------------------------------------------------------- uses */
.pf-uses{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 6px}
.pf-use{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border-radius:var(--md-sys-shape-corner-large,16px);background:#fff;border:1px solid var(--md-sys-color-outline-variant,#dde3ea)}
.pf-use .vt-ico{flex:none;width:42px;height:42px;border-radius:var(--md-sys-shape-corner-medium,12px);display:flex;align-items:center;justify-content:center;background:var(--pf-lava-soft);color:var(--pf-lava)}
.pf-use h3{margin:0 0 6px;font-size:16.5px;letter-spacing:-.01em;color:var(--pf-ink)}
.pf-use p{margin:0 0 4px;font-size:14.5px;line-height:1.6;color:var(--pf-mut)}
.pf-use .v-link{min-height:36px;font-size:13.5px}
.vt-band .pf-use{background:#fff}

/* ---------------------------------------------------------------- tables, price list */
.pf-price-table td small,.pf-price-table th small{display:block;font-size:12px;font-weight:400;color:var(--pf-mut);margin-top:2px}
.pf-price-table tbody th{font-size:15px;font-weight:500;letter-spacing:0;text-transform:none;text-align:left;padding:14px 12px;border-bottom:1px solid var(--pf-line)}
.pf-price-table tbody th a{color:var(--pf-ink);text-decoration:none;font-weight:600}.pf-price-table tbody th a:hover{color:var(--pf-p)}
.pf-price-table td strong{font-weight:600;color:var(--pf-ink)}
.vt-dist tbody th{font-size:15px;font-weight:500;letter-spacing:0;text-transform:none;text-align:left;padding:14px 12px;border-bottom:1px solid var(--pf-line);color:var(--pf-ink)}
.vt-dist tbody th a{color:var(--md-sys-color-primary,#2c28dd);text-decoration:none}
.pf-pricelist{max-height:640px;overflow:auto;border:1px solid var(--pf-line);border-radius:var(--md-sys-shape-corner-large,16px);background:#fff}
.pf-pricelist .vt-dist{min-width:760px}
.pf-pricelist thead th{position:sticky;top:0;background:#fff;z-index:1;box-shadow:0 1px 0 var(--pf-line)}
.pf-pricelist thead th small{display:block;text-transform:none;letter-spacing:0;font-weight:400}
.pf-pricelist th[data-sort]{cursor:pointer;user-select:none}.pf-pricelist th[data-sort]::after{content:" ↕";opacity:.4}
.pf-pricelist th[aria-sort=ascending]::after{content:" ↑";opacity:1}.pf-pricelist th[aria-sort=descending]::after{content:" ↓";opacity:1}
.pf-pricelist tbody tr:hover{background:var(--pf-sur)}
.pf-chip-price{display:block;margin-top:4px;font-size:12px;font-weight:600;color:var(--pf-lava)}
.pf-hub .vt-region a{align-items:flex-start}
.pf-hub .vt-region ul{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}

/* ---------------------------------------------------------------- page hero, photos, spec */
.pf-hero{background:linear-gradient(180deg,var(--pf-sur) 0%,rgba(245,247,249,0) 100%)}
.pf-photo{margin:0;position:relative;border-radius:28px 110px 28px 28px;overflow:hidden;background:var(--pf-basalt);box-shadow:var(--md-sys-elevation-2,0 8px 24px rgba(23,37,54,.12))}
.pf-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.pf-photo figcaption{position:absolute;left:14px;bottom:14px;padding:7px 12px;border-radius:999px;background:rgba(12,14,22,.66);color:#fff;font-size:12px;backdrop-filter:blur(6px)}
.pf-spec{background:radial-gradient(120% 120% at 100% 0%,#3a3f4a 0%,var(--pf-basalt-2) 50%,var(--pf-basalt) 100%);box-shadow:0 30px 70px -40px rgba(20,22,28,.7)}
.pf-spec h3{color:#ffb38a}
.pf-spec-table{width:100%;border-collapse:collapse;margin:0 0 18px}
.pf-spec-table th,.pf-spec-table td{text-align:left;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:14.5px;vertical-align:top}
.pf-spec-table th{width:42%;font-weight:500;color:#aab4c0;padding-right:12px}.pf-spec-table td{color:#fff}
.pf-spec p{color:#aab4c0}
.vt-cards--2{grid-template-columns:repeat(2,1fr)}.vt-cards--3{grid-template-columns:repeat(3,1fr)}

/* ---------------------------------------------------------------- guides */
.pf-guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pf-guides--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pf-guide-card{display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:var(--md-sys-shape-corner-large,16px);background:#fff;border:1px solid var(--pf-line);color:var(--pf-ink);text-decoration:none;transition:box-shadow .2s,transform .2s,border-color .2s}
.pf-guide-card:hover{box-shadow:var(--md-sys-elevation-2,0 8px 24px rgba(23,37,54,.12));transform:translateY(-2px);border-color:transparent}
.pf-guide-card .v-eyebrow{margin:0;color:var(--pf-lava)}
.pf-guide-card strong{font-size:18px;line-height:1.3;letter-spacing:-.015em}
.pf-guide-card>span{font-size:14px;line-height:1.55;color:var(--pf-mut)}
.pf-guide-card em{margin-top:auto;display:inline-flex;align-items:center;gap:10px;font-style:normal;font-size:14px;font-weight:500;color:var(--pf-p)}
.pf-guide h3{font-size:19px;letter-spacing:-.01em;margin:28px 0 10px;color:var(--md-sys-color-on-surface,#172536)}
.pf-guide ul,.pf-guide ol{margin:0 0 18px;padding-left:22px;font-size:16.5px;line-height:1.7;color:var(--md-sys-color-on-surface,#172536)}
.pf-guide li{margin-bottom:6px}
.pf-guide .vt-table-wrap{margin:8px 0 22px}
.pf-guide figure{margin:20px 0 26px}.pf-guide figure img{display:block;width:100%;height:auto;border-radius:20px}
.pf-guide figcaption{font-size:13px;color:var(--pf-mut);margin-top:8px}
.pf-guide blockquote{margin:22px 0;padding:18px 22px;border-left:4px solid var(--pf-lava);background:var(--pf-lava-soft);border-radius:0 16px 16px 0;font-size:16px;line-height:1.65}
.pf-guide a{color:var(--md-sys-color-primary,#2c28dd)}

/* ---------------------------------------------------------------- quote section, contact, about */
.pf-quote-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:start}
.pf-quote-grid .vt-points{margin-top:26px}
.pf-quote-alt{margin-top:24px;font-size:14.5px;color:var(--pf-mut)}.pf-quote-alt a{color:var(--pf-p);font-weight:500}
.pf-quote-hero{align-items:start}.pf-quote-side{margin-top:30px;max-width:520px}
.pf-contact-cta{margin-top:26px}
.pf-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:220px;gap:12px;margin-bottom:clamp(32px,4vw,56px)}
.pf-gallery figure{position:relative;margin:0;border-radius:20px;overflow:hidden;background:var(--pf-basalt)}
.pf-gallery .pf-g-wide{grid-column:span 2;grid-row:span 2}
.pf-gallery img{width:100%;height:100%;object-fit:cover}
.pf-gallery figcaption{position:absolute;left:12px;bottom:12px;padding:6px 11px;border-radius:999px;background:rgba(12,14,22,.66);color:#fff;font-size:12px}
.pf-about-text h3{font-size:20px;letter-spacing:-.015em;margin:0 0 10px}.pf-about-text p{font-size:16px;line-height:1.7;color:var(--pf-mut);margin:0}
.pf-map-split{align-items:center}

/* ---------------------------------------------------------------- calculators */
.pf-tool-wrap{max-width:880px}
.pf-hero--tool .vt-hero-grid--solo,.pf-hero--guide .vt-hero-grid--solo{grid-template-columns:minmax(0,860px)}
.pf-hero--tool{padding-bottom:clamp(20px,3vw,40px)}
.pf-calc .vt-result div strong{font-size:clamp(20px,2vw,26px)}

/* ---------------------------------------------------------------- responsive */
@media (max-width:1100px){.pf-guides--4{grid-template-columns:repeat(2,minmax(0,1fr))}.pf-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:1023px){
  .pf-home-hero-grid,.pf-quote-grid{grid-template-columns:1fr}
  .pf-home-hero-bg::after{background:linear-gradient(180deg,rgba(12,14,22,.86) 0%,rgba(12,14,22,.8) 55%,rgba(12,14,22,.9) 100%)}
  .pf-guides{grid-template-columns:repeat(2,minmax(0,1fr))}.vt-cards--3{grid-template-columns:repeat(2,1fr)}
  .pf-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:180px}
  .pf-photo{border-radius:22px 70px 22px 22px}
}
@media (max-width:767px){
  .pf-home-hero h1{font-size:calc(clamp(36px,9.4vw,48px) * var(--vs-fs-display,1))}
  .pf-hero-trust{margin-top:28px}.pf-hero-trust li{padding:10px 14px}
  .pf-est-form{grid-template-columns:1fr}
  .pf-est-out{grid-template-columns:1fr 1fr}.pf-est-out .pf-est-main+div{grid-column:1/-1}.pf-est-out .pf-est-main~div:nth-child(4){order:1;grid-column:1/-1}
  .pf-uses,.pf-guides,.pf-guides--4,.vt-cards--2,.vt-cards--3{grid-template-columns:1fr}
  .pf-steps{grid-template-columns:1fr}
  .pf-gallery{grid-auto-rows:150px}.pf-gallery .pf-g-wide{grid-row:span 1}
  .pf-pricelist{max-height:520px}
  .pf-products{grid-template-columns:1fr}
}

/* quote wizard: three steps */
.pf-quote .vt-steps{grid-template-columns:repeat(3,1fr)}
.pf-quote .vt-route{margin-top:6px}
.pf-product-page .vt-facts strong,.pf-about .vt-facts strong{font-size:clamp(20px,2vw,26px);line-height:1.25}
