/* =========================================================
   REGAL — PARTITIONS PAGE REDESIGN
   Paste into css/partition.css
   Matches the .pt-* HTML classes exactly.
========================================================= */

.partition-page {
    --pt-red: #ed2d35;
    --pt-red-dark: #c91f28;
    --pt-black: #090b0e;
    --pt-black-2: #111417;
    --pt-paper: #f7f6f2;
    --pt-white: #fff;
    --pt-text: #171918;
    --pt-muted: #777b78;
    --pt-line: rgba(20,22,21,.12);
    --pt-max: 1316px;
    --pt-side: 22px;
    --pt-display: "Bebas Neue", sans-serif;
    --pt-body: "Inter", sans-serif;
    width: 100%;
    overflow: hidden;
    background: var(--pt-paper);
    color: var(--pt-text);
    font-family: var(--pt-body);
}

.partition-page *,
.partition-page *::before,
.partition-page *::after { box-sizing: border-box; }

.partition-page img { display:block; width:100%; max-width:100%; }
.partition-page a { text-decoration:none; }
.partition-page h1,
.partition-page h2,
.partition-page h3,
.partition-page p { margin-top:0; }

.pt-rail {
    width:min(var(--pt-max), calc(100% - (var(--pt-side) * 2)));
    margin-inline:auto;
}

/* =========================================================
   KICKER / BUTTONS
========================================================= */

.pt-kicker {
    display:flex;
    align-items:center;
    gap:12px;
    width:max-content;
    margin-bottom:24px;
    color:var(--pt-muted);
    font-size:9px;
    font-weight:800;
    line-height:1;
    letter-spacing:2.5px;
    text-transform:uppercase;
}

.pt-kicker::after {
    content:"";
    width:38px;
    height:1px;
    background:var(--pt-red);
}

.pt-kicker span { color:var(--pt-red); }
.pt-kicker-light { color:rgba(255,255,255,.72); }

.pt-button,
.pt-outline-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:22px;
    min-height:56px;
    padding:16px 21px;
    font-size:9px;
    font-weight:800;
    line-height:1;
    letter-spacing:2px;
    text-transform:uppercase;
    transition:.3s ease;
}

.pt-button {
    background:var(--pt-red);
    border:1px solid var(--pt-red);
    color:#fff !important;
}

.pt-button:hover {
    background:var(--pt-red-dark);
    border-color:var(--pt-red-dark);
    color:#fff !important;
    transform:translateY(-2px);
}

.pt-outline-button {
    border:1px solid rgba(255,255,255,.42);
    color:#fff !important;
}

.pt-outline-button:hover {
    background:#fff;
    color:var(--pt-black) !important;
    transform:translateY(-2px);
}

/* =========================================================
   HERO
========================================================= */

.pt-hero {
    position:relative;
    min-height:calc(100vh - 90px);
    display:flex;
    align-items:center;
    overflow:hidden;
    background:#090b0e;
    color:#fff;
}

.pt-hero-bg,
.pt-hero-overlay {
    position:absolute;
    inset:0;
}

.pt-hero-bg {
    background:url("../images/glasspart.jpg") center/cover no-repeat;
    transform:scale(1.04);
}

.pt-hero-overlay {
    background:
        linear-gradient(90deg,rgba(4,6,7,.94) 0%,rgba(4,6,7,.72) 42%,rgba(4,6,7,.18) 100%),
        linear-gradient(0deg,rgba(4,6,7,.66),transparent 60%);
}

.pt-hero-inner {
    position:relative;
    z-index:2;
    min-height:calc(100vh - 90px);
    display:grid;
    grid-template-columns:1.25fr .75fr;
    align-items:center;
    gap:80px;
    padding-block:100px 90px;
}

.pt-hero-copy { max-width:820px; }

.pt-hero h1 {
    margin:0;
    color:#fff;
    font-family:var(--pt-display);
    font-size:clamp(82px,9vw,132px);
    font-weight:400;
    line-height:.76;
    text-transform:uppercase;
}

.pt-hero h1 span { color:var(--pt-red); }

.pt-hero-copy > p {
    max-width:630px;
    margin:34px 0 0;
    color:rgba(255,255,255,.74);
    font-size:15px;
    line-height:1.85;
}

.pt-hero-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:32px;
}

.pt-hero-side {
    align-self:end;
    justify-self:end;
    text-align:right;
    padding-bottom:25px;
}

.pt-hero-side > span {
    color:rgba(255,255,255,.55);
    font-size:8px;
    font-weight:800;
    letter-spacing:2px;
}

.pt-hero-side strong {
    display:block;
    margin:13px 0;
    color:#fff;
    font-family:var(--pt-display);
    font-size:54px;
    font-weight:400;
    line-height:.8;
}

.pt-hero-side small {
    color:rgba(255,255,255,.5);
    font-size:8px;
    font-weight:800;
    letter-spacing:1.5px;
}

.pt-hero-number {
    position:absolute;
    z-index:2;
    right:20px;
    bottom:0;
    color:rgba(255,255,255,.1);
    font-family:var(--pt-display);
    font-size:180px;
    line-height:.7;
    pointer-events:none;
}

/* =========================================================
   INTRO
========================================================= */

.pt-intro {
    padding-block:110px;
    background:var(--pt-paper);
}

.pt-section-topline {
    display:flex;
    justify-content:space-between;
    padding-bottom:15px;
    margin-bottom:45px;
    border-bottom:1px solid var(--pt-line);
    color:#858a87;
    font-size:8px;
    font-weight:800;
    letter-spacing:2px;
}

.pt-intro-grid {
    display:grid;
    grid-template-columns:1fr .9fr;
    gap:90px;
    align-items:center;
}

.pt-intro-media {
    position:relative;
    height:680px;
    overflow:hidden;
    background:#ddd;
}

.pt-intro-media::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(0,0,0,.48),transparent 55%);
}

.pt-intro-media img {
    height:100%;
    object-fit:cover;
    transition:transform .8s ease;
}

.pt-intro-media:hover img { transform:scale(1.04); }

.pt-media-tag {
    position:absolute;
    z-index:2;
    left:18px;
    bottom:18px;
    padding:10px 12px;
    background:var(--pt-red);
    color:#fff;
    font-size:8px;
    font-weight:800;
    letter-spacing:1.8px;
}

.pt-intro-copy { max-width:620px; }

.pt-intro-copy h2,
.pt-heading-row h2,
.pt-detail-copy h2,
.pt-showcase-copy h2,
.pt-gallery-heading h2,
.pt-use h2,
.pt-cta h2 {
    margin:0;
    font-family:var(--pt-display);
    font-weight:400;
    line-height:.77;
    text-transform:uppercase;
}

.pt-intro-copy h2 { font-size:clamp(76px,7vw,112px); }
.pt-intro-copy h2 em { color:var(--pt-red); font-style:normal; }

.pt-intro-copy p,
.pt-heading-row > p,
.pt-detail-copy > p,
.pt-showcase-copy > p,
.pt-gallery-heading > p {
    color:#626764;
    font-size:14px;
    line-height:1.85;
}

.pt-intro-copy .pt-lead,
.pt-detail-copy .pt-lead,
.pt-showcase-copy .pt-lead {
    color:#303432;
    font-size:16px;
    line-height:1.8;
    margin-top:28px;
}

.pt-mini-stats {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    margin-top:36px;
    border-top:1px solid var(--pt-line);
    border-bottom:1px solid var(--pt-line);
}

.pt-mini-stats > div {
    min-height:110px;
    padding:19px 15px 19px 0;
    border-right:1px solid var(--pt-line);
}

.pt-mini-stats > div:not(:first-child) { padding-left:15px; }
.pt-mini-stats > div:last-child { border-right:0; }
.pt-mini-stats strong { display:block; color:var(--pt-red); font-family:var(--pt-display); font-size:36px; font-weight:400; }
.pt-mini-stats span { color:#555b58; font-size:9px; font-weight:800; line-height:1.3; letter-spacing:1px; text-transform:uppercase; }

/* =========================================================
   SOLUTIONS
========================================================= */

.pt-solutions { padding-block:110px; background:#fff; }

.pt-heading-row {
    display:grid;
    grid-template-columns:1fr .62fr;
    gap:70px;
    align-items:end;
    margin-bottom:55px;
}

.pt-heading-row h2 { font-size:clamp(76px,7.3vw,116px); }
.pt-heading-row h2 span { color:var(--pt-red); }
.pt-heading-row > p { margin:0; max-width:480px; }

.pt-solution-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.pt-card {
    overflow:hidden;
    background:#f1f0ec;
    border:1px solid rgba(20,22,21,.08);
    transition:transform .35s ease,box-shadow .35s ease;
}

.pt-card:hover { transform:translateY(-7px); box-shadow:0 24px 50px rgba(0,0,0,.11); }
.pt-card-dark { background:#0c0f12; color:#fff; }
.pt-card-red { background:var(--pt-red); color:#fff; }

.pt-card-image { position:relative; height:350px; overflow:hidden; background:#ddd; }
.pt-card-image img { height:100%; object-fit:cover; transition:transform .8s ease; }
.pt-card:hover .pt-card-image img { transform:scale(1.05); }

.pt-card-image > span {
    position:absolute;
    left:16px;
    bottom:16px;
    padding:8px 10px;
    background:var(--pt-red);
    color:#fff;
    font-size:8px;
    font-weight:800;
    letter-spacing:1.5px;
}

.pt-card-red .pt-card-image > span { background:#fff; color:var(--pt-red); }

.pt-card-body { padding:28px; }
.pt-card-index { margin-bottom:10px; color:var(--pt-red); font-family:var(--pt-display); font-size:30px; }
.pt-card-dark .pt-card-index,.pt-card-red .pt-card-index { color:#fff; }

.pt-card-body h3 {
    margin:0 0 22px;
    color:var(--pt-text);
    font-family:var(--pt-display);
    font-size:48px;
    font-weight:400;
    line-height:.8;
    text-transform:uppercase;
}

.pt-card-dark .pt-card-body h3 { color:#fff; }
.pt-card-body h3 span { display:block; color:var(--pt-red); }
.pt-card-red .pt-card-body h3,.pt-card-red .pt-card-body h3 span { color:#fff; }

.pt-card-body p {
    min-height:142px;
    margin:0 0 20px;
    color:#606563;
    font-size:12px;
    line-height:1.78;
}

.pt-card-dark .pt-card-body p { color:#b9bec0; }
.pt-card-red .pt-card-body p { color:rgba(255,255,255,.88); }

.pt-card-body ul { list-style:none; margin:0; padding:0; }
.pt-card-body li {
    padding:10px 0;
    border-top:1px solid rgba(20,22,21,.11);
    color:#3c413f;
    font-size:9px;
    font-weight:700;
    letter-spacing:.4px;
    text-transform:uppercase;
}
.pt-card-dark .pt-card-body li { color:#cbd0d1; border-color:rgba(255,255,255,.14); }
.pt-card-red .pt-card-body li { color:#fff; border-color:rgba(255,255,255,.27); }

.pt-text-link {
    display:inline-flex;
    align-items:center;
    gap:17px;
    margin-top:23px;
    padding-bottom:7px;
    border-bottom:1px solid currentColor;
    color:#171918 !important;
    font-size:8px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
}
.pt-card-dark .pt-text-link,.pt-card-red .pt-text-link { color:#fff !important; }
.pt-text-link i { color:var(--pt-red); }
.pt-card-red .pt-text-link i { color:#fff; }

/* =========================================================
   IMAGE BREAK
========================================================= */

.pt-image-break,
.pt-glass-detail,
.pt-cta { position:relative; overflow:hidden; color:#fff; }

.pt-image-break { min-height:730px; display:flex; align-items:center; background:#080a0d; }
.pt-image-break-bg,.pt-image-break-overlay { position:absolute; inset:0; }
.pt-image-break-bg { background:url("../images/glasspart.jpg") center/cover no-repeat; }
.pt-image-break-overlay { background:linear-gradient(90deg,rgba(3,5,6,.93),rgba(3,5,6,.57),rgba(3,5,6,.16)); }
.pt-image-break-inner { position:relative; z-index:2; padding-block:110px; }
.pt-image-break h2 { margin:0 0 30px; font-family:var(--pt-display); font-size:clamp(80px,8vw,124px); font-weight:400; line-height:.75; text-transform:uppercase; }
.pt-image-break h2 span { color:var(--pt-red); }
.pt-image-break-inner > p { max-width:610px; color:rgba(255,255,255,.75); font-size:15px; line-height:1.85; }

.pt-feature-points { display:grid; grid-template-columns:repeat(3,1fr); max-width:720px; margin-top:42px; border-top:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); }
.pt-feature-points > div { padding:20px 18px 20px 0; border-right:1px solid rgba(255,255,255,.18); }
.pt-feature-points > div:not(:first-child) { padding-left:18px; }
.pt-feature-points > div:last-child { border-right:0; }
.pt-feature-points strong { display:block; color:var(--pt-red); font-family:var(--pt-display); font-size:34px; font-weight:400; }
.pt-feature-points span { color:#d0d4d5; font-size:9px; font-weight:700; line-height:1.45; letter-spacing:1px; }

/* =========================================================
   DETAIL
========================================================= */

.pt-detail { padding-block:120px; background:var(--pt-paper); }
.pt-detail-grid { display:grid; grid-template-columns:.88fr 1.12fr; gap:90px; align-items:center; }
.pt-detail-copy h2 { font-size:clamp(76px,7vw,112px); }
.pt-detail-copy h2 span { color:var(--pt-red); }

.pt-checks { max-width:600px; margin-top:30px; border-top:1px solid var(--pt-line); }
.pt-checks > div { display:flex; align-items:center; gap:14px; padding:14px 0; border-bottom:1px solid var(--pt-line); color:#363b39; font-size:11px; font-weight:700; }
.pt-checks i { color:var(--pt-red); }

.pt-detail-gallery { position:relative; min-height:640px; }
.pt-detail-photo { position:absolute; overflow:hidden; background:#ddd; }
.pt-detail-photo img { width:100%; height:100%; object-fit:cover; transition:transform .8s ease; }
.pt-detail-photo:hover img { transform:scale(1.04); }
.pt-detail-photo-large { top:0; right:0; width:77%; height:530px; }
.pt-detail-photo-small { left:0; bottom:0; width:44%; height:285px; border:10px solid var(--pt-paper); }

.pt-stamp { position:absolute; right:5%; bottom:25px; width:120px; height:120px; display:flex; flex-direction:column; align-items:center; justify-content:center; background:var(--pt-red); color:#fff; text-align:center; }
.pt-stamp small { font-size:7px; font-weight:800; letter-spacing:2px; }
.pt-stamp strong { font-family:var(--pt-display); font-size:50px; font-weight:400; line-height:.8; }
.pt-stamp span { margin-top:8px; font-size:6px; font-weight:700; letter-spacing:1px; }

/* =========================================================
   GLASS DETAIL
========================================================= */

.pt-glass-detail { min-height:700px; display:flex; align-items:center; background:#080a0d; }
.pt-glass-detail-bg,.pt-glass-detail-overlay { position:absolute; inset:0; }
.pt-glass-detail-bg { background:url("../images/glasspart.jpg") center/cover no-repeat; }
.pt-glass-detail-overlay { background:linear-gradient(90deg,rgba(3,5,6,.93),rgba(3,5,6,.62),rgba(3,5,6,.15)); }
.pt-glass-detail-inner { position:relative; z-index:2; display:grid; grid-template-columns:1fr .8fr; gap:80px; align-items:end; padding-block:110px; }
.pt-glass-copy { max-width:800px; }
.pt-glass-copy h2 { margin:0 0 30px; font-family:var(--pt-display); font-size:clamp(78px,8vw,122px); font-weight:400; line-height:.75; text-transform:uppercase; }
.pt-glass-copy h2 span { color:var(--pt-red); }
.pt-glass-copy > p { max-width:620px; margin-bottom:30px; color:rgba(255,255,255,.75); font-size:15px; line-height:1.85; }

.pt-glass-specs { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); }
.pt-glass-specs > div { padding:20px 12px; border-right:1px solid rgba(255,255,255,.18); }
.pt-glass-specs > div:last-child { border-right:0; }
.pt-glass-specs span { display:block; color:var(--pt-red); font-family:var(--pt-display); font-size:28px; }
.pt-glass-specs strong { display:block; color:#fff; font-family:var(--pt-display); font-size:28px; font-weight:400; }
.pt-glass-specs small { color:#aeb4b6; font-size:7px; letter-spacing:1px; text-transform:uppercase; }

/* =========================================================
   SHOWCASE
========================================================= */

.pt-showcase { padding-block:120px; background:#fff; }
.pt-showcase-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:90px; align-items:center; }
.pt-showcase-media { position:relative; height:650px; overflow:hidden; background:#ddd; }
.pt-showcase-media img { height:100%; object-fit:cover; transition:transform .8s ease; }
.pt-showcase-media:hover img { transform:scale(1.04); }
.pt-showcase-label { position:absolute; left:0; bottom:0; padding:15px 18px; background:var(--pt-red); color:#fff; font-size:8px; font-weight:800; letter-spacing:1.7px; }
.pt-showcase-copy h2 { font-size:clamp(76px,7vw,112px); }
.pt-showcase-copy h2 span { color:var(--pt-red); }

.pt-showcase-list { margin-top:30px; border-top:1px solid var(--pt-line); }
.pt-showcase-list div { padding:15px 0; border-bottom:1px solid var(--pt-line); color:#343937; font-size:11px; font-weight:700; }
.pt-showcase-list span { display:inline-block; width:45px; color:var(--pt-red); font-family:var(--pt-display); font-size:25px; font-weight:400; }

/* =========================================================
   GALLERY
========================================================= */

.pt-gallery { padding-block:110px; background:var(--pt-paper); }
.pt-gallery-heading { margin-bottom:55px; }
.pt-gallery-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; grid-template-rows:300px 300px; gap:16px; }
.pt-gallery-item { position:relative; margin:0; overflow:hidden; background:#ddd; }
.pt-gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .8s ease; }
.pt-gallery-item:hover img { transform:scale(1.045); }
.pt-gallery-tall { grid-row:1 / 3; }
.pt-gallery-wide { grid-column:2 / 4; }
.pt-gallery-item::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.58),transparent 55%); pointer-events:none; }
.pt-gallery-item figcaption { position:absolute; z-index:2; left:16px; bottom:15px; color:#fff; font-size:9px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; }
.pt-gallery-item figcaption span { color:var(--pt-red); margin-right:10px; }

/* =========================================================
   USE CASES
========================================================= */

.pt-use { padding-block:110px; background:#fff; }
.pt-use h2 { margin-bottom:55px; font-size:clamp(76px,7vw,112px); }
.pt-use h2 span { color:var(--pt-red); }
.pt-use-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--pt-line); border-bottom:1px solid var(--pt-line); }
.pt-use-item { min-height:260px; padding:28px 24px; border-right:1px solid var(--pt-line); }
.pt-use-item:last-child { border-right:0; }
.pt-use-item > span { display:block; margin-bottom:34px; color:var(--pt-red); font-family:var(--pt-display); font-size:31px; }
.pt-use-item i { display:block; margin-bottom:17px; color:#1d211f; font-size:23px; }
.pt-use-item h3 { margin:0 0 10px; font-family:var(--pt-display); font-size:36px; font-weight:400; line-height:.9; text-transform:uppercase; }
.pt-use-item p { max-width:210px; margin:0; color:#686d6a; font-size:11px; line-height:1.65; }

/* =========================================================
   CTA
========================================================= */

.pt-cta { min-height:650px; display:flex; align-items:center; background:#080a0d; }
.pt-cta-bg,.pt-cta-overlay { position:absolute; inset:0; }
.pt-cta-bg { background:url("../images/glassshow.jpg") center/cover no-repeat; }
.pt-cta-overlay { background:linear-gradient(90deg,rgba(3,5,6,.94),rgba(3,5,6,.58),rgba(3,5,6,.16)); }
.pt-cta-inner { position:relative; z-index:2; padding-block:110px; }
.pt-cta h2 { font-size:clamp(82px,8.5vw,128px); }
.pt-cta h2 span { color:var(--pt-red); }
.pt-cta p { max-width:590px; margin:30px 0; color:#bec3c5; font-size:15px; line-height:1.85; }

/* =========================================================
   RESPONSIVE — 1100
========================================================= */

@media (max-width:1100px) {
    .pt-hero-inner,.pt-glass-detail-inner { gap:45px; }
    .pt-intro-grid,.pt-detail-grid,.pt-showcase-grid { gap:55px; }
    .pt-solution-grid { gap:14px; }
    .pt-card-body { padding:24px; }
    .pt-card-body h3 { font-size:42px; }
}

/* =========================================================
   RESPONSIVE — 900
========================================================= */

@media (max-width:900px) {
    .pt-hero,.pt-image-break,.pt-glass-detail,.pt-cta { min-height:auto; }

    .pt-hero-inner { min-height:auto; grid-template-columns:1fr; padding-block:90px 80px; }
    .pt-hero-side { justify-self:start; align-self:auto; text-align:left; padding:0; }
    .pt-hero-number { font-size:110px; }

    .pt-intro-grid,.pt-detail-grid,.pt-showcase-grid,.pt-glass-detail-inner { grid-template-columns:1fr; }
    .pt-intro-copy { max-width:none; }
    .pt-intro-media { height:570px; }

    .pt-heading-row { grid-template-columns:1fr; gap:25px; }
    .pt-solution-grid { grid-template-columns:1fr; }
    .pt-card-image { height:420px; }
    .pt-card-body p { min-height:auto; }

    .pt-image-break-inner,.pt-glass-detail-inner,.pt-cta-inner { padding-block:90px; }
    .pt-feature-points { max-width:760px; }

    .pt-detail-gallery { min-height:590px; }
    .pt-showcase-media { height:560px; }

    .pt-use-grid { grid-template-columns:repeat(2,1fr); }
    .pt-use-item:nth-child(2) { border-right:0; }
    .pt-use-item:nth-child(-n+2) { border-bottom:1px solid var(--pt-line); }
}

/* =========================================================
   RESPONSIVE — 650
========================================================= */

@media (max-width:650px) {
    .partition-page { --pt-side:16px; }
    .pt-rail { width:calc(100% - 32px); }

    .pt-intro,.pt-solutions,.pt-detail,.pt-showcase,.pt-gallery,.pt-use { padding-block:80px; }

    .pt-hero-inner { width:calc(100% - 32px); padding-block:75px 70px; }
    .pt-hero h1 { font-size:clamp(61px,16vw,88px); }
    .pt-hero-copy > p { font-size:14px; }
    .pt-hero-side strong { font-size:40px; }
    .pt-hero-number { font-size:82px; }

    .pt-section-topline { margin-bottom:30px; }
    .pt-intro-media { height:440px; }

    .pt-intro-copy h2,
    .pt-heading-row h2,
    .pt-detail-copy h2,
    .pt-showcase-copy h2,
    .pt-gallery-heading h2,
    .pt-use h2,
    .pt-cta h2 { font-size:clamp(58px,15.5vw,86px); }

    .pt-mini-stats { grid-template-columns:1fr; }
    .pt-mini-stats > div,.pt-mini-stats > div:not(:first-child) { padding:15px 0; border-right:0; border-bottom:1px solid var(--pt-line); }
    .pt-mini-stats > div:last-child { border-bottom:0; }

    .pt-card-image { height:340px; }

    .pt-feature-points { grid-template-columns:1fr; }
    .pt-feature-points > div,.pt-feature-points > div:not(:first-child) { padding:15px 0; border-right:0; border-bottom:1px solid rgba(255,255,255,.18); }
    .pt-feature-points > div:last-child { border-bottom:0; }

    .pt-detail-gallery { min-height:460px; }
    .pt-detail-photo-large { width:78%; height:375px; }
    .pt-detail-photo-small { width:48%; height:215px; border-width:7px; }
    .pt-stamp { width:90px; height:90px; right:5%; bottom:15px; }
    .pt-stamp strong { font-size:39px; }

    .pt-glass-detail-inner { width:calc(100% - 32px); }
    .pt-glass-specs { grid-template-columns:1fr; }
    .pt-glass-specs > div { border-right:0; border-bottom:1px solid rgba(255,255,255,.18); }
    .pt-glass-specs > div:last-child { border-bottom:0; }

    .pt-showcase-media { height:430px; }

    .pt-gallery-grid { grid-template-columns:1fr 1fr; grid-template-rows:260px 260px 260px; }
    .pt-gallery-tall { grid-row:auto; }
    .pt-gallery-wide { grid-column:1 / 3; }

    .pt-use-grid { grid-template-columns:1fr; }
    .pt-use-item,.pt-use-item:nth-child(2) { min-height:190px; border-right:0; border-bottom:1px solid var(--pt-line); }
    .pt-use-item:last-child { border-bottom:0; }

    .pt-cta-inner { width:calc(100% - 32px); }
}

/* =========================================================
   RESPONSIVE — 380
========================================================= */

@media (max-width:380px) {
    .pt-rail { width:calc(100% - 26px); }
    .pt-hero-inner,.pt-glass-detail-inner,.pt-cta-inner { width:calc(100% - 26px); }
    .pt-hero h1 { font-size:57px; }
    .pt-card-image { height:290px; }
    .pt-card-body h3 { font-size:38px; }
    .pt-detail-gallery { min-height:390px; }
    .pt-detail-photo-large { height:320px; }
    .pt-detail-photo-small { height:180px; }
}
