/* TABCOTE Pro: an open product catalogue in the CoteX Forest & Ivory system. */
.tabcote-pro-page .hero{padding:24px 0 64px}
.tabcote-pro-page .hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:64px;min-height:560px;align-items:center}
.tabcote-pro-page .hero-copy{padding:32px 0}
.tabcote-pro-page .hero h1{max-width:15ch;margin:32px 0;text-wrap:initial}
.tabcote-pro-page .hero .lede{max-width:48ch;color:#e0ece2}
.tabcote-pro-page .hero-art{padding:0;justify-content:center;height:auto;overflow:visible}
.tabcote-pro-page .hero-art img{width:min(100%,480px);height:auto;max-height:none;aspect-ratio:1;object-fit:cover;object-position:center 48%;border-radius:50%;margin:0}
.tabcote-pro-page .hero-actions{gap:24px;margin-top:32px;flex-wrap:wrap}
.tabcote-pro-page .button{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
.tabcote-pro-page .section{padding:88px 0}
.tabcote-pro-page .benefits{background:var(--pale);border:0}
.tabcote-pro-page .benefits>.wrap{display:block}
.tabcote-pro-page .benefits h2{margin:0 0 48px;max-width:none}
.tabcote-pro-page .benefits .benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin:0}
.tabcote-pro-page .benefits .benefit{padding:24px 0 0;border-top:1px solid var(--line);min-height:0;background:none;border-radius:0}
.tabcote-pro-page .benefit::before{display:none}
.tabcote-pro-page main h3{font-weight:700!important;letter-spacing:0!important}
.tabcote-pro-page .benefit h3{margin:0 0 12px}
.tabcote-pro-page .benefit p{margin:0;color:var(--muted)}
/* The left index orients the reader; the right column holds readable product records. */
.tabcote-pro-page .formulation-library{background:var(--paper);border:0;padding:104px 0}
.tabcote-pro-page .formulation-library>.wrap{display:grid;grid-template-columns:280px minmax(0,1fr);gap:72px;align-items:start}
.tabcote-pro-page .formulation-heading{display:block;position:sticky;top:40px;margin:0}
.tabcote-pro-page .formulation-heading h2{margin:0 0 24px;text-wrap:initial}
.tabcote-pro-page .formulation-heading>p{max-width:34ch;margin:0;color:var(--muted)}
.catalogue-index{display:flex;flex-direction:column;gap:0;margin:32px 0 0}
.tabcote-pro-page .catalogue-index a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--forest);text-decoration:none}
.catalogue-index a:first-child{border-top:1px solid var(--line)}
.catalogue-index svg{flex:none}
.catalogue-index a:hover{text-decoration:underline;text-underline-offset:5px}
.tabcote-pro-page .formulation-category{border:0;margin:0 0 64px;scroll-margin-top:32px}
.tabcote-pro-page .formulation-category:last-child{border:0;margin-bottom:0}
.formulation-category-heading{padding:20px 0;border-top:1px solid var(--forest);border-bottom:1px solid var(--line);scroll-margin-top:32px}
.formulation-category-heading h3{margin:0;max-width:100%;text-wrap:initial}
.tabcote-pro-page .formulation-gallery-content{padding:0}
.formulation-photo-gallery{display:grid;grid-template-columns:1fr;gap:0}
.formulation-tile{display:grid;grid-template-columns:176px minmax(0,1fr);align-items:start;gap:32px;margin:0;padding:36px 0;border-bottom:1px solid var(--line);min-width:0}
.formulation-tile img{width:176px;height:176px;object-fit:contain;background:transparent;border:0;border-radius:0;display:block}
.formulation-tile figcaption{min-width:0}
.formula-title{display:flex;align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:16px}
.formulation-tile h4{margin:0 0 16px;text-wrap:initial;overflow-wrap:anywhere}
.formula-title h4{margin:0}
.release-duration{display:inline-block;padding:4px 10px;border:1px solid var(--line);border-radius:30px;font-size:12px;line-height:1.5;color:var(--forest);text-transform:uppercase}
.formulation-tile p{margin:0;max-width:65ch;color:var(--muted)}
.tabcote-pro-page .process{padding:80px 0;background:var(--pale);border:0}
.tabcote-pro-page .process>.wrap{display:block}
.tabcote-pro-page .process-heading{display:block;margin-bottom:48px}
.tabcote-pro-page .process-heading h2{margin:0;max-width:20ch}
.tabcote-pro-page .process .step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin:0}
.tabcote-pro-page .process .step{display:block;padding:24px 0 0;border-top:1px solid var(--line)}
.tabcote-pro-page .step-number{display:block;color:var(--muted);font-size:12px;margin-bottom:20px}
.tabcote-pro-page .process .step h3{margin:0 0 12px}
.tabcote-pro-page .process .step p{margin:0;max-width:40ch;color:var(--muted)}
.tabcote-pro-page .closing{margin:0;padding:80px 0;border-radius:0;background:var(--forest)}
.closing-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:64px;align-items:center}
.tabcote-pro-page .closing h2{margin:0 0 24px;max-width:22ch}
.tabcote-pro-page .closing-intro{margin:0;max-width:48ch}
.tabcote-pro-page .closing-actions{display:flex;flex-direction:column;align-items:flex-start;gap:24px;margin:0;justify-self:end}
@media(max-width:1100px){
 .tabcote-pro-page .hero-grid{gap:40px;min-height:500px}
 .tabcote-pro-page .formulation-library>.wrap{grid-template-columns:240px minmax(0,1fr);gap:40px}
 .formulation-tile{grid-template-columns:132px minmax(0,1fr);gap:24px}
 .formulation-tile img{width:132px;height:132px}
 .tabcote-pro-page .benefits .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
 .tabcote-pro-page .formulation-library>.wrap{grid-template-columns:1fr;gap:48px}
 .tabcote-pro-page .formulation-heading{position:static;display:grid;grid-template-columns:1fr 1fr;gap:24px 40px}
 .tabcote-pro-page .formulation-heading h2{margin:0}
 .tabcote-pro-page .formulation-heading>p{max-width:none}
 .catalogue-index{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:24px;margin:0}
 .tabcote-pro-page .catalogue-index a{border-top:0;flex:1;min-width:160px}
 .formulation-tile{grid-template-columns:176px minmax(0,1fr);gap:32px}
 .formulation-tile img{width:176px;height:176px}
 .tabcote-pro-page .process .step-grid{gap:28px}
}
@media(max-width:700px){
 .tabcote-pro-page .hero{padding:8px 0 48px}
 .tabcote-pro-page .hero-grid{display:flex;flex-direction:column;gap:32px;min-height:0}
 .tabcote-pro-page .hero-copy{padding:24px 0 0}
 .tabcote-pro-page .hero h1{margin:24px 0}
 .tabcote-pro-page .hero-art{padding:0;width:100%}
 .tabcote-pro-page .hero-art img{width:min(100%,336px)}
 .tabcote-pro-page .hero-actions{gap:20px;flex-direction:row;align-items:center}
 .tabcote-pro-page .section,.tabcote-pro-page .formulation-library,.tabcote-pro-page .process{padding:56px 0}
 .tabcote-pro-page .benefits h2{margin-bottom:32px}
 .tabcote-pro-page .benefits .benefit-grid{grid-template-columns:1fr;gap:24px}
 .tabcote-pro-page .formulation-heading{display:block}
 .tabcote-pro-page .formulation-heading h2{margin-bottom:24px}
 .catalogue-index{display:flex;flex-direction:column;gap:0;margin-top:24px}
 .tabcote-pro-page .catalogue-index a{min-height:48px;padding:12px 0}
 .formulation-tile{grid-template-columns:1fr;gap:24px;padding:32px 0}
 .formulation-tile img{width:160px;height:160px;justify-self:start}
 .formula-title{flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px 16px}
 .tabcote-pro-page .formulation-category{margin-bottom:48px}
 .tabcote-pro-page .process-heading{margin-bottom:32px}
 .tabcote-pro-page .process .step-grid{grid-template-columns:1fr;gap:32px}
 .tabcote-pro-page .step-number{margin-bottom:12px}
 .tabcote-pro-page .closing{padding:56px 0}
 .closing-grid{grid-template-columns:1fr;gap:32px}
 .tabcote-pro-page .closing-actions{justify-self:start;gap:20px}
}
