/*
 * Terralora Ceramics V11 — Brand Clean Catalog & Trade Pages
 * Product-led homepage, detailed product stories, quote-led line sheet.
 */
:root{
  --v11-ink:#211914;
  --v11-paper:#f7f1e7;
  --v11-cream:#eee2d1;
  --v11-porcelain:#fffdf8;
  --v11-clay:#a9573d;
  --v11-clay-deep:#783522;
  --v11-olive:#686c54;
  --v11-line:rgba(33,25,20,.16);
  --v11-shadow:0 28px 78px rgba(48,29,18,.13);
}

/* Global refinements */
.tl-main{overflow:clip}
.tl-desktop-nav ul{gap:clamp(14px,1.2vw,24px)}
.tl-desktop-nav a{font-size:.75rem}
.tl-header-wholesale{background:var(--v11-clay)!important;border-color:var(--v11-clay)!important}
.tl-header-wholesale:hover{background:var(--v11-clay-deep)!important;border-color:var(--v11-clay-deep)!important}
.tl-product-card{background:transparent}
.tl-product-media{background:#eadfce}
.tl-product-meta{padding-top:17px}
.tl-product-meta strong{font-size:clamp(1.2rem,1.5vw,1.7rem);line-height:1.08}
.tl-products-feature .tl-actions{justify-content:center}

/* Homepage: catalog proof block */
.tl-catalog-overview{background:var(--v11-ink);color:#fff;position:relative;overflow:hidden}
.tl-catalog-overview::before{content:"TERRALORA";position:absolute;right:-.04em;bottom:-.22em;font-family:var(--display);font-size:clamp(8rem,23vw,28rem);line-height:1;color:rgba(255,255,255,.025);pointer-events:none}
.tl-catalog-overview-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr);gap:clamp(56px,8vw,132px);align-items:center;position:relative;z-index:1}
.tl-catalog-overview-copy .tl-eyebrow{color:#d98c6e}
.tl-catalog-overview-copy .tl-display{max-width:10ch;font-size:clamp(3.2rem,5.7vw,6.8rem)}
.tl-catalog-overview-copy .tl-copy{color:rgba(255,255,255,.66);margin-top:25px}
.tl-catalog-overview-copy .tl-button--secondary{color:#fff!important;border-color:rgba(255,255,255,.45)!important}
.tl-catalog-overview-copy .tl-button--secondary:hover{background:#fff!important;color:var(--v11-ink)!important}
.tl-catalog-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:42px;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.tl-catalog-stats div{padding:23px 18px 23px 0;border-right:1px solid rgba(255,255,255,.16)}
.tl-catalog-stats div+div{padding-left:18px}
.tl-catalog-stats div:last-child{border-right:0}
.tl-catalog-stats strong{display:block;font-family:var(--display);font-size:clamp(2.1rem,3.4vw,4rem);font-weight:500;line-height:1;color:#fff}
.tl-catalog-stats span{display:block;margin-top:8px;color:rgba(255,255,255,.58);font-size:.61rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.tl-catalog-collage{min-height:690px;display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:1fr .72fr;gap:15px;transform:rotate(1deg)}
.tl-catalog-collage-item{position:relative;overflow:hidden;text-decoration:none;background:#d5b18f;box-shadow:0 20px 50px rgba(0,0,0,.22)}
.tl-catalog-collage-item:first-child{grid-row:1/3}
.tl-catalog-collage-item:nth-child(n+4){display:none}
.tl-catalog-collage-item img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.tl-catalog-collage-item::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(24,16,11,.78))}
.tl-catalog-collage-item span{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;font-family:var(--display);font-size:clamp(1.15rem,1.6vw,1.8rem);line-height:1.05}
.tl-catalog-collage-item:hover img{transform:scale(1.045)}

/* Product detail — serious wholesale presentation */
.tl-product-v11{padding:34px 0 clamp(76px,8vw,126px);background:var(--v11-paper)}
.tl-product-v11 .tl-breadcrumbs{margin-bottom:30px}
.tl-product-v11-hero{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr);gap:clamp(42px,6vw,96px);align-items:start}
.tl-product-v11-gallery{position:sticky;top:96px;min-width:0}
.tl-product-v11-gallery .tl-product-main{height:min(74vh,850px);min-height:580px;background:#eadfce;border:1px solid var(--v11-line);overflow:hidden}
.tl-product-v11-gallery .tl-product-main img,.tl-product-v11-gallery .tl-product-main video{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),opacity .18s}
.tl-product-v11-gallery .tl-product-main.is-zoomed img{transform:scale(1.55);cursor:zoom-out}
.tl-product-v11-gallery .tl-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:12px}
.tl-product-v11-gallery .tl-thumb{height:106px;border:1px solid transparent;background:#e8dccb;padding:0;overflow:hidden;cursor:pointer;opacity:.72;transition:opacity .2s,border-color .2s,transform .2s}
.tl-product-v11-gallery .tl-thumb:hover,.tl-product-v11-gallery .tl-thumb.active{opacity:1;border-color:var(--v11-clay);transform:translateY(-2px)}
.tl-product-v11-gallery .tl-thumb img{width:100%;height:100%;object-fit:cover}
.tl-product-v11-info{padding:clamp(12px,2vw,30px) 0}
.tl-product-v11-labels{display:flex;justify-content:space-between;gap:15px;padding-bottom:16px;border-bottom:1px solid var(--v11-line);margin-bottom:28px;color:#716359;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.tl-product-v11-info .tl-eyebrow a{text-decoration:none;border-bottom:1px solid currentColor}
.tl-product-v11-info .tl-h1{max-width:11ch;font-size:clamp(3.3rem,5vw,6rem)}
.tl-product-v11-info .tl-lead{margin-top:25px;color:#62554b}
.tl-quote-price-panel{margin-top:34px;padding:25px 26px;background:var(--v11-ink);color:#fff;border-left:5px solid var(--v11-clay)}
.tl-quote-price-panel>span{display:block;color:#d98d70;font-size:.61rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.tl-quote-price-panel strong{display:block;margin-top:8px;font-family:var(--display);font-size:clamp(1.65rem,2.35vw,2.65rem);font-weight:500;line-height:1.03}
.tl-quote-price-panel p{margin:13px 0 0;color:rgba(255,255,255,.66);font-size:.86rem;line-height:1.6}
.tl-product-v11-actions{display:grid;gap:10px;margin-top:26px}
.tl-product-v11-actions .tl-button{width:100%}
.tl-product-proof-list{list-style:none;margin:31px 0 0;padding:0;border-top:1px solid var(--v11-line)}
.tl-product-proof-list li{display:grid;grid-template-columns:115px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid var(--v11-line);font-size:.82rem}
.tl-product-proof-list strong{font-size:.63rem;letter-spacing:.1em;text-transform:uppercase}
.tl-product-proof-list span{color:#65584f}
.tl-product-v11-story{background:var(--v11-porcelain);border-top:1px solid var(--v11-line);border-bottom:1px solid var(--v11-line)}
.tl-product-v11-story-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(520px,1.25fr);gap:clamp(50px,9vw,150px);align-items:start}
.tl-product-v11-story .tl-display{max-width:12ch;font-size:clamp(2.8rem,4.7vw,5.7rem)}
.tl-product-v11-story .tl-prose{font-size:clamp(1.02rem,1.2vw,1.2rem);line-height:1.85;color:#5d5047}
.tl-product-v11-details{background:var(--v11-paper)}
.tl-product-v11-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--v11-line);border:1px solid var(--v11-line)}
.tl-product-v11-details-grid>article{background:var(--v11-porcelain);padding:clamp(32px,4vw,58px)}
.tl-product-v11-details-grid .tl-h2{font-size:clamp(2rem,3vw,3.4rem);margin-bottom:28px}
.tl-spec-v11{margin:0;border-top:1px solid var(--v11-line)}
.tl-spec-v11 dt,.tl-spec-v11 dd{padding:12px 0;border-bottom:1px solid var(--v11-line)}
.tl-spec-v11 dt{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#75675d}
.tl-spec-v11 dd{margin:0;text-align:right;font-size:.85rem}
.tl-product-v11-trade{background:var(--v11-ink)!important;color:#fff}
.tl-product-v11-trade .tl-eyebrow{color:#d99074}
.tl-product-v11-trade ul{list-style:none;padding:0;margin:0 0 30px}
.tl-product-v11-trade li{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.75)}
.tl-product-v11-trade li::before{content:"✓";color:#da9075;margin-right:10px}
.tl-product-v11-trade .tl-text-link{color:#fff}
.tl-product-gallery-wall-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:minmax(260px,38vw);gap:14px}
.tl-product-gallery-wall-grid figure{margin:0;position:relative;overflow:hidden;background:#e9ddcc}
.tl-product-gallery-wall-grid figure:first-child{grid-row:span 2}
.tl-product-gallery-wall-grid img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.tl-product-gallery-wall-grid figure:hover img{transform:scale(1.035)}
.tl-product-gallery-wall-grid figcaption{position:absolute;left:16px;right:16px;bottom:14px;padding:9px 12px;background:rgba(255,253,248,.9);font-size:.72rem}
.tl-product-v11-quote{background:var(--v11-clay);color:#fff}
.tl-product-v11-quote-inner{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:end}
.tl-product-v11-quote .tl-eyebrow{color:#f4c8b6}
.tl-product-v11-quote .tl-display{font-size:clamp(3rem,5.3vw,6.4rem);max-width:11ch}
.tl-product-v11-quote p{max-width:700px;color:rgba(255,255,255,.75)}
.tl-product-v11-quote .tl-button{min-width:250px}

/* Digital line sheet */
.tl-linesheet-v11{padding:36px 0 90px;background:var(--v11-paper)}
.tl-linesheet-v11-cover{min-height:670px;display:grid;grid-template-columns:1fr .82fr;background:var(--v11-ink);color:#fff;overflow:hidden}
.tl-linesheet-v11-cover-copy{padding:clamp(48px,7vw,104px);display:flex;flex-direction:column;justify-content:center}
.tl-linesheet-v11-cover-copy .tl-eyebrow{color:#dc9277}
.tl-linesheet-v11-cover-copy .tl-h1{max-width:10ch}
.tl-linesheet-v11-cover-copy .tl-lead{color:rgba(255,255,255,.67);margin-top:25px}
.tl-linesheet-v11-cover-media{min-height:100%;position:relative;background:linear-gradient(135deg,#d5af88,#9d5943)}
.tl-linesheet-v11-cover-media::after{content:"";position:absolute;inset:22px;border:1px solid rgba(255,255,255,.38)}
.tl-linesheet-v11-cover-media img{width:100%;height:100%;object-fit:cover}
.tl-linesheet-v11-mark{height:100%;display:grid;place-items:center;font-family:var(--display);font-size:18rem;color:rgba(255,255,255,.45)}
.tl-linesheet-v11-stats{display:flex;gap:0;margin-top:36px;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.tl-linesheet-v11-stats span{min-width:145px;padding:18px 18px 18px 0;color:rgba(255,255,255,.58);font-size:.61rem;letter-spacing:.1em;text-transform:uppercase}
.tl-linesheet-v11-stats strong{display:block;color:#fff;font-family:var(--display);font-size:2rem;font-weight:500;letter-spacing:0;text-transform:none}
.tl-linesheet-v11-note{display:grid;grid-template-columns:.82fr 1.18fr;gap:50px;padding:38px clamp(30px,5vw,70px);background:var(--v11-clay);color:#fff;margin-bottom:38px}
.tl-linesheet-v11-note .tl-eyebrow{color:#f2c2ae}
.tl-linesheet-v11-note h2{margin:0;font-family:var(--display);font-size:clamp(2rem,3.2vw,3.8rem);font-weight:500;line-height:1}
.tl-linesheet-v11-note>p{margin:0;align-self:end;color:rgba(255,255,255,.75);font-size:1rem;line-height:1.75}
.tl-linesheet-v11-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tl-linesheet-v11-card{display:grid;grid-template-columns:minmax(230px,.86fr) minmax(0,1.14fr);min-height:430px;background:var(--v11-porcelain);border:1px solid var(--v11-line);overflow:hidden}
.tl-linesheet-v11-image{position:relative;overflow:hidden;background:#e8ddcc;text-decoration:none}
.tl-linesheet-v11-image img{width:100%;height:100%;object-fit:cover;transition:transform .75s var(--ease)}
.tl-linesheet-v11-image span{position:absolute;left:14px;bottom:14px;padding:8px 10px;background:rgba(255,253,248,.94);font-size:.61rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.tl-linesheet-v11-image:hover img{transform:scale(1.04)}
.tl-linesheet-v11-card-body{padding:30px 28px;display:flex;flex-direction:column}
.tl-linesheet-v11-kicker{display:flex;justify-content:space-between;gap:12px;color:#7c6b5e;font-size:.57rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.tl-linesheet-v11-card h2{margin:20px 0 13px;font-family:var(--display);font-size:clamp(1.8rem,2.5vw,3rem);font-weight:500;line-height:.98}
.tl-linesheet-v11-card h2 a{text-decoration:none}
.tl-linesheet-v11-card-body>p{margin:0 0 20px;color:#6e6056;font-size:.8rem;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tl-linesheet-v11-meta{margin:auto 0 0;border-top:1px solid var(--v11-line)}
.tl-linesheet-v11-meta>div{display:grid;grid-template-columns:105px 1fr;gap:14px;padding:9px 0;border-bottom:1px solid var(--v11-line)}
.tl-linesheet-v11-meta dt{font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#77695f}
.tl-linesheet-v11-meta dd{margin:0;text-align:right;font-size:.73rem;font-weight:650}
.tl-linesheet-v11-price dd{color:var(--v11-clay-deep)}
.tl-linesheet-v11-actions{display:flex;justify-content:space-between;gap:16px;padding-top:19px}
.tl-linesheet-v11-actions a{font-size:.62rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--v11-line)}
.tl-linesheet-v11-footer{display:flex;justify-content:space-between;gap:30px;margin-top:42px;padding-top:25px;border-top:1px solid var(--v11-line);font-size:.72rem;color:#6c5e54}
.tl-linesheet-v11-footer>div{display:grid;gap:5px}

/* Print line sheet */
@media print{
  .tl-site-header,.tl-announcement,.tl-site-footer,.tl-cookie,.tl-menu-backdrop,.tl-linesheet-v11 .tl-actions,.tl-linesheet-v11-actions{display:none!important}
  .tl-linesheet-v11{padding:0;background:#fff}
  .tl-linesheet-v11 .tl-container{width:100%}
  .tl-linesheet-v11-cover{min-height:250mm;break-after:page}
  .tl-linesheet-v11-note{break-inside:avoid}
  .tl-linesheet-v11-grid{grid-template-columns:repeat(2,1fr);gap:8mm}
  .tl-linesheet-v11-card{grid-template-columns:1fr;min-height:0;break-inside:avoid;page-break-inside:avoid}
  .tl-linesheet-v11-image{height:82mm}
  .tl-linesheet-v11-card-body{padding:6mm}
}

@media (max-width:1180px){
  .tl-catalog-overview-grid{grid-template-columns:1fr;gap:55px}
  .tl-catalog-collage{min-height:590px}
  .tl-product-v11-hero{grid-template-columns:minmax(0,1.05fr) minmax(370px,.95fr);gap:42px}
  .tl-product-v11-gallery .tl-product-main{min-height:520px}
  .tl-product-v11-details-grid{grid-template-columns:1fr 1fr}
  .tl-product-v11-details-grid>article:last-child{grid-column:1/3}
  .tl-linesheet-v11-grid{grid-template-columns:1fr}
  .tl-linesheet-v11-card{grid-template-columns:minmax(280px,.75fr) 1.25fr}
}

@media (max-width:900px){
  .tl-product-v11{padding-top:18px}
  .tl-product-v11-hero{grid-template-columns:1fr}
  .tl-product-v11-gallery{position:static}
  .tl-product-v11-gallery .tl-product-main{height:auto;min-height:0;aspect-ratio:1/1.03}
  .tl-product-v11-info{padding-top:10px}
  .tl-product-v11-story-grid{grid-template-columns:1fr;gap:30px}
  .tl-product-v11-details-grid{grid-template-columns:1fr}
  .tl-product-v11-details-grid>article:last-child{grid-column:auto}
  .tl-product-gallery-wall-grid{grid-template-columns:1fr 1fr;grid-auto-rows:minmax(280px,55vw)}
  .tl-product-gallery-wall-grid figure:first-child{grid-row:auto;grid-column:1/3}
  .tl-product-v11-quote-inner{grid-template-columns:1fr;align-items:start}
  .tl-linesheet-v11-cover{grid-template-columns:1fr;min-height:0}
  .tl-linesheet-v11-cover-media{min-height:470px;order:-1}
  .tl-linesheet-v11-note{grid-template-columns:1fr;gap:20px}
  .tl-linesheet-v11-card{grid-template-columns:minmax(230px,.8fr) 1.2fr}
}

@media (max-width:620px){
  .tl-catalog-stats{grid-template-columns:1fr}
  .tl-catalog-stats div,.tl-catalog-stats div+div{padding:16px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}
  .tl-catalog-stats div:last-child{border-bottom:0}
  .tl-catalog-collage{min-height:500px;grid-template-columns:1fr 1fr;grid-template-rows:1fr .6fr;gap:8px}
  .tl-catalog-collage-item span{left:13px;right:13px;bottom:12px;font-size:1rem}
  .tl-product-v11-gallery .tl-thumbs{grid-template-columns:repeat(4,1fr)}
  .tl-product-v11-gallery .tl-thumb{height:78px}
  .tl-product-v11-info .tl-h1{font-size:clamp(2.8rem,14vw,4.5rem)}
  .tl-product-proof-list li{grid-template-columns:90px 1fr}
  .tl-product-gallery-wall-grid{display:block}
  .tl-product-gallery-wall-grid figure{height:115vw;max-height:520px;margin-bottom:10px}
  .tl-product-v11-quote .tl-button{min-width:0;width:100%}
  .tl-linesheet-v11{padding-top:0}
  .tl-linesheet-v11-cover-copy{padding:40px 24px}
  .tl-linesheet-v11-cover-media{min-height:370px}
  .tl-linesheet-v11-stats{display:grid;grid-template-columns:repeat(3,1fr)}
  .tl-linesheet-v11-stats span{min-width:0;padding-right:8px;font-size:.52rem}
  .tl-linesheet-v11-stats strong{font-size:1.55rem}
  .tl-linesheet-v11-note{padding:30px 22px}
  .tl-linesheet-v11-card{grid-template-columns:1fr}
  .tl-linesheet-v11-image{height:105vw;max-height:520px}
  .tl-linesheet-v11-card-body{padding:25px 22px}
  .tl-linesheet-v11-footer{display:grid}
}
