/* Public interiors: the same ink, paper and copper as the homepage. */
.interior-page { --line: #d7dedc; }
/* The address reuses the home glyph already present in the shared font subset. */
.interior-page .fa-map-marker-alt:before { content: '\f015'; }
.interior-page #wrapper { overflow: clip; }
.interior-page #header .desktop-nav a[href] { color: #e0e7ea; }
.interior-page #header .desktop-nav a[aria-current="page"] { color: #f1bc8f; }
.interior-page .inner { width: min(1280px, calc(100% - 96px)); max-width: 1280px; margin-inline: auto; }
.interior-page #main > section > .inner { width: min(1280px, calc(100% - 96px)); max-width: 1280px; }
.interior-page header.major { width: auto; max-width: 100%; }
.interior-page header.major > :first-child { width: auto; max-width: 100%; }
.interior-page h1 { font-size: clamp(36px, 4.3vw, 64px); line-height: 1.12; text-wrap: balance; }
.interior-page h2 { font-size: clamp(26px, 2.6vw, 38px); line-height: 1.25; }
.interior-page h3 { font-size: 24px; line-height: 1.35; }
.interior-page p { color: var(--muted); line-height: 1.85; }
.interior-page strong { color: var(--ink); }
.interior-page img { max-width: 100%; }
.interior-page .interior-hero { position: relative; background: var(--ink); color: white; isolation: isolate; }
.interior-page .interior-hero > .inner { position: relative; padding: 32px 0 65px; z-index: 1; }
.interior-page .interior-hero header { max-width: 990px; margin: 0; }
.interior-page .interior-hero header h3 { color: #becbd0; font-size: 17px; font-weight: 400; letter-spacing: 0; margin-top: 20px; }
.interior-page .interior-hero p { color: #d4dfe4; max-width: 780px; margin: 24px 0 0; font-size: 16px; }
.interior-page .interior-hero strong { color: inherit; font-weight: 500; }
.interior-page .breadcrumbs { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; font-size: 12px; color: #b9c9d0; margin-bottom: 48px; }
.interior-page .breadcrumbs a { color: #dce5e9; }
.interior-page .breadcrumbs > span:last-child { max-width: 650px; }
.interior-page .interior-hero.has-image > .inner { padding-bottom: 74px; }
.interior-page .has-image header, .interior-page .has-image p { max-width: 690px; }
.interior-page .interior-hero-image { position: absolute; inset-block: 0; inset-inline-end: 0; width: 57%; height: 100%; object-fit: cover; z-index: -2; }
.interior-page .has-image:after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, #142b3a 25%, #142b3af0 43%, #142b3a35); z-index: -1; }
.interior-page #main > section > .inner, .interior-page #wrapper > #one > .inner { padding: 64px 0; }
.interior-page #main > section > .inner > p { max-width: 880px; }
.interior-page #main { min-height: 200px; }
.interior-page .spotlights { width: min(1280px, calc(100% - 96px)); margin: 0 auto; padding-bottom: 64px; }
.interior-page .spotlights > section { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 32px; background: #eaece6; align-items: stretch; }
.interior-page .spotlights > section:nth-child(2n) { background: #e9e8e1; }
.interior-page .spotlights > section > .image { width: 100%; border-radius: 0; min-height: 350px; background: #dce1dd; }
.interior-page .spotlights > section > .image img { display: block; width: 100%; height: 100%; max-height: 580px; object-fit: cover; border-radius: 0; }
.interior-page .spotlights > section > .content { width: 100%; padding: 48px; display: flex; align-items: center; }
.interior-page .spotlights > section > .content > .inner { width: 100%; padding: 0; opacity: 1; transform: none; }
.interior-page .spotlights > section:nth-child(2n) > .image { order: 2; }
.interior-page .spotlights h3 { font-size: 30px; }
.interior-page .button.next:before, .interior-page .button.next:after { filter: brightness(.3); }
.interior-page .row { margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.interior-page .row > [class*="col-"] { width: auto; padding: 0; min-width: 0; }
.interior-page.page-products .row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.interior-page .row > div { background: white; border: 1px solid var(--line); display: flex; flex-direction: column; }
.interior-page .row > div > h3 { padding: 28px 28px 0; margin-bottom: 15px; }
.interior-page .row > div > p { padding: 0 28px; margin: 20px 0; }
.interior-page .row > div > .actions { margin-top: auto; padding: 22px 28px; border-top: 1px solid var(--line); }
.interior-page .row .button { box-shadow: none; padding-inline-start: 0; text-align: start; font-size: 16px; }
.interior-page .row > div > a > img { display: block; width: 100%; height: 300px; object-fit: contain; padding: 24px; }
.interior-page .image-300container { width: 100%; height: 280px; margin: 0; padding: 24px; background: #fff; }
.interior-page .image-300container img { width: 100%; height: 100%; object-fit: contain; }
.interior-page .image-300container a { display: block; height: 100%; }
.interior-page .product-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; width: min(1280px, calc(100% - 96px)); margin: 0 auto; padding: 56px 0; background: transparent; }
.interior-page .inner .product-gallery { width: 100%; padding: 24px 0; }
.interior-page .product-item { width: auto; min-width: 0; padding: 22px; border: 1px solid var(--line); border-radius: 0; box-shadow: none; text-align: start; background: #fff; transition: border-color .2s ease; }
.interior-page .product-item:hover { transform: none; border-color: var(--accent); }
.interior-page .product-item img { display: block; width: 100%; height: 230px; max-height: none; object-fit: contain; margin: 0 auto 22px; }
.interior-page .product-item .caption { color: var(--ink); font-size: 14px; line-height: 1.75; margin: 0; padding-top: 18px; border-top: 1px solid var(--line); }
.interior-page .product-item .caption h2 { font-size: 19px; color: var(--ink); }
.interior-page .accessory-spec-section { padding-block: 36px; margin: 0; border-top: 1px solid var(--line); }
.interior-page .accessory-spec-image { border-radius: 0; border: 1px solid var(--line); padding: 28px; }
.interior-page .table-wrapper { overflow-x: auto; }
.interior-page table { background: white; border: 1px solid var(--line); font-size: 14px; }
.interior-page table th { background: var(--ink); color: white; font-size: 13px; padding: 15px; }
.interior-page table td { padding: 15px; color: var(--ink); border-color: var(--line); }
.interior-page table tbody tr { border-color: var(--line); }
.interior-page table tbody tr:nth-child(2n + 1) { background: #edf0ec; }
.interior-page.page-aboutus #one > .inner { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.interior-page.page-aboutus #about-us h2:first-child { color: var(--accent); font-size: 14px; letter-spacing: .06em; margin-bottom: 22px; }
.interior-page.page-aboutus figure.image.main { margin: 0; }
.interior-page.page-aboutus figure img { height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.interior-page.page-001 #one > .inner { max-width: 900px; }
.interior-page.page-001 #one h2 { font-size: 27px; margin-top: 42px; }
.interior-page.page-news #content { padding: 34px; border-block: 1px solid var(--line); max-width: 960px; }
.interior-page .project-cta { background: #e9e8e1; border-top: 1px solid var(--line); }
.interior-page .project-cta > .inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 48px 0; }
.interior-page .project-cta h2 { margin: 0 0 12px; font-size: 30px; }
.interior-page .project-cta p { margin: 0; }
.interior-page .project-cta .button { flex-shrink: 0; min-width: 150px; }
.interior-page #contact { background: var(--ink); color: #e8eef1; border: 0; }
.interior-page #contact > .inner { display: grid; grid-template-columns: 1.15fr 1fr; gap: 80px; padding: 64px 0 !important; }
.interior-page #contact > .inner > section { width: auto; min-width: 0; padding: 0; border: 0; }
.interior-page #contact .split > section { padding: 0 0 26px; border: 0; }
.interior-page #contact h3 { font-size: 17px; letter-spacing: 0; }
.interior-page #contact p, .interior-page #contact a, .interior-page #contact address { color: #c9d6dd; }
.interior-page #contact .contact-method { margin: 0 0 24px; }
.interior-page #contact .contact-method img { display: block; margin-top: 25px; width: 100%; height: auto; }
.interior-page #contact .icon.alt:before { color: #e5a26d; background: #ffffff0a; box-shadow: none; }
.interior-page #contact label { font-size: 12px; letter-spacing: .06em; font-weight: 500; }
.interior-page #contact input:not([type="submit"]):not([type="reset"]), .interior-page #contact textarea { border: 1px solid #ffffff40; background: #ffffff05; color: white; border-radius: 0; font: inherit; }
.interior-page #contact input[type="reset"] { color: white; }
.interior-page #contact .form-section { background: transparent; box-shadow: none; border-radius: 0; }
.interior-page #contact .form-status.success { background: #294a40; color: #d5f1df; }
.interior-page #contact .form-status.error { background: #513b3a; color: #ffe1db; }
.interior-page #contact .required { color: #f1bc8f; }
.interior-page.page-contact #contact { background: var(--paper); color: var(--ink); }
.interior-page.page-contact #contact > .inner { align-items: start; }
.interior-page.page-contact #contact .contact-method { padding-inline-start: 0; }
.interior-page.page-contact #contact :is(p,a,address) { color: var(--muted); }
.interior-page.page-contact #contact .contact-method > i { color: var(--accent); }
.interior-page.page-contact #contact .form-section { padding: 36px; background: white; border: 1px solid var(--line); margin: 0; }
.interior-page.page-contact #contact input:not([type="submit"]):not([type="reset"]), .interior-page.page-contact #contact textarea { background: #f5f5f1; border-color: #b4c0c4; color: var(--ink); }
.interior-page.page-contact #contact input[type="reset"] { color: var(--ink); }
.interior-page.page-contact #contact .required { color: #984524; }
.interior-page.page-contact #contact ul.actions { justify-content: flex-start; }
.interior-page.page-contact #contact .contact-method img { max-width: 480px; }
.interior-page.page-contact #contact ul.alt li { border-color: var(--line); }
.interior-page .interior-skip { position: fixed; top: 10px; inset-inline-start: 20px; background: white; padding: 12px 20px; z-index: 10002; transform: translateY(-200%); }
.interior-page .interior-skip:focus { transform: translateY(0); }
.interior-page :is(h1,h2,h3,p,.caption,a) { overflow-wrap: anywhere; }
.interior-page [id] { scroll-margin-top: 110px; }
.interior-page:dir(rtl) .has-image:after { background: linear-gradient(270deg, #142b3a 25%, #142b3af0 43%, #142b3a35); }
.interior-page:dir(rtl) .contact-method { padding-left: 0; padding-right: 3.25em; }
.interior-page:dir(rtl) .contact-method .icon { left: auto; right: 0; }
@media (max-width: 1100px) {
  .interior-page .product-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .interior-page .spotlights > section > .content { padding: 32px; }
  .interior-page #contact > .inner { gap: 40px; }
}
@media (max-width: 980px) {
  .interior-page .inner, .interior-page #main > section > .inner, .interior-page .spotlights, .interior-page .product-gallery { width: calc(100% - 64px); }
  .interior-page .row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .interior-page.page-aboutus #one > .inner { gap: 32px; }
  .interior-page .product-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .interior-page .inner, .interior-page #main > section > .inner, .interior-page .spotlights, .interior-page .product-gallery { width: calc(100% - 40px); }
  .interior-page .interior-hero > .inner, .interior-page .interior-hero.has-image > .inner { padding: 24px 0 42px; }
  .interior-page .breadcrumbs { margin-bottom: 32px; font-size: 11px; }
  .interior-page .interior-hero p { font-size: 15px; }
  .interior-page .interior-hero-image { width: 100%; opacity: .35; }
  .interior-page #main > section > .inner, .interior-page #wrapper > #one > .inner { padding: 40px 0; }
  .interior-page .spotlights > section { grid-template-columns: 1fr; margin-bottom: 24px; }
  .interior-page .spotlights > section > .image { min-height: 0; height: 270px; }
  .interior-page .spotlights > section:nth-child(2n) > .image { order: 0; }
  .interior-page .spotlights > section > .content { padding: 28px; }
  .interior-page .spotlights h3 { font-size: 26px; }
  .interior-page .spotlights { padding-bottom: 24px; }
  .interior-page .row, .interior-page.page-products .row, .interior-page.page-aboutus #one > .inner { grid-template-columns: 1fr; }
  .interior-page .product-gallery { gap: 14px; padding: 32px 0; }
  .interior-page .product-item { padding: 12px; }
  .interior-page .product-item img { height: 150px; margin-bottom: 14px; }
  .interior-page .product-item .caption { font-size: 12px; padding-top: 12px; }
  .interior-page .product-item .caption h2 { font-size: 16px; }
  .interior-page .accessory-spec-grid { grid-template-columns: minmax(0, 1fr); }
  .interior-page .project-cta > .inner { flex-direction: column; align-items: flex-start; gap: 24px; padding: 36px 0; }
  .interior-page .project-cta h2 { font-size: 27px; }
  .interior-page #contact > .inner { grid-template-columns: 1fr; padding: 40px 0 !important; }
  .interior-page #contact .contact-info .contact-method { padding-inline-start: 0; }
  .interior-page.page-contact #contact .form-section { padding: 24px; order: -1; }
  .interior-page #contact .fields > .field.half { width: 100%; }
  .interior-page #footer > .inner { gap: 18px; }
}
@media (max-width: 380px) {
  .interior-page .product-gallery { grid-template-columns: minmax(0, 1fr); }
  .interior-page .product-item img { height: 230px; }
}
