/* OpenLectura — a quiet, editorial study space. */

.product-openlectura { --accent: #b45309; --accent-tint: #fef3c7; --wash: #fbfaf7; background: var(--wash); }
.openlectura-hero { padding: clamp(52px, 8vw, 110px) 0 74px; background: linear-gradient(118deg, #fffdf8 0%, #f8f2e5 54%, #edf1e7 100%); border-bottom: 1px solid #e5e0d7; }
.openlectura-hero .product-lockup { margin-bottom: clamp(42px, 7vw, 88px); }
.openlectura-hero-grid { display: grid; grid-template-columns: minmax(0, .88fr) minmax(440px, 1.12fr); align-items: center; gap: clamp(36px, 6vw, 96px); }
.openlectura-hero-copy h1 { max-width: 650px; margin: 0; color: #26362e; font-size: clamp(3.25rem, 5.35vw, 5.8rem); line-height: .97; letter-spacing: -.072em; }
.openlectura-hero-copy h1 em { color: #b45309; font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.openlectura-hero-lede { max-width: 520px; margin: 28px 0 0; color: #56625a; font-size: 1.06rem; line-height: 1.75; }
.openlectura-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 32px; }
.openlectura-text-link, .openlectura-app-preview figcaption a { color: #26362e; font-size: .82rem; font-weight: 700; text-decoration: none; }
.openlectura-text-link:hover, .openlectura-app-preview figcaption a:hover { color: var(--accent); }
.openlectura-hero-note { margin: 28px 0 0; color: #7a8178; font-size: .76rem; line-height: 1.5; }
.openlectura-app-preview { margin: 0; overflow: hidden; border: 1px solid #ded8cf; border-radius: 22px; background: #fff; box-shadow: 0 24px 55px rgba(58, 50, 36, .14); }
.openlectura-app-preview img { display: block; width: 100%; height: auto; aspect-ratio: 8 / 5; object-fit: cover; object-position: top center; background: #fff; }
.openlectura-app-preview figcaption { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 17px; color: #79766e; font-size: .68rem; letter-spacing: .06em; text-transform: uppercase; }
.openlectura-app-preview figcaption a { color: #7a3d09; font-size: .7rem; letter-spacing: 0; text-transform: none; }
.openlectura-intro { padding-top: clamp(76px, 10vw, 142px); padding-bottom: clamp(76px, 10vw, 142px); }
.openlectura-section-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .7fr); gap: clamp(36px, 8vw, 150px); align-items: end; }
.openlectura-section-heading .eyebrow { color: #b45309; }.openlectura-section-heading h2 { margin: 13px 0 0; color: #26362e; font-size: clamp(2.5rem, 4.6vw, 4.7rem); line-height: .98; letter-spacing: -.065em; }.openlectura-section-heading > p { margin: 0; color: #626a63; font-size: 1.02rem; line-height: 1.78; }
.openlectura-principles { padding: clamp(72px, 9vw, 126px) 0; border-top: 1px solid #e3ddd2; border-bottom: 1px solid #e3ddd2; background: #f0eee7; }
.openlectura-principle-grid, .openlectura-local-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(25px, 5vw, 82px); }
.openlectura-principle-grid article, .openlectura-local-grid article { border-top: 1px solid #b6b1a7; padding-top: 18px; }.openlectura-principle-grid span, .openlectura-local-grid span { color: #b45309; font-size: .7rem; font-weight: 800; letter-spacing: .12em; }.openlectura-principle-grid h3, .openlectura-local-grid h3 { margin: 29px 0 12px; font-size: clamp(1.36rem, 2vw, 1.74rem); line-height: 1.1; letter-spacing: -.04em; }.openlectura-principle-grid p, .openlectura-local-grid p { margin: 0; color: #666960; font-size: .92rem; line-height: 1.7; }
.openlectura-local { padding: clamp(80px, 10vw, 142px) 0; background: #26362e; color: #f8f5ec; }.openlectura-local-heading { grid-template-columns: .82fr 1fr .75fr; align-items: end; }.openlectura-local-heading .eyebrow { margin: 0; color: #e8bf75; }.openlectura-local-heading h2 { margin: 0; color: #fffdf6; }.openlectura-local-heading > p { color: #c9d0c8; }.openlectura-local-grid { margin-top: clamp(54px, 7vw, 94px); }.openlectura-local-grid article { border-color: #5c6d62; }.openlectura-local-grid span { color: #e8bf75; }.openlectura-local-grid h3 { color: #fffdf6; }.openlectura-local-grid p { color: #c9d0c8; }
@media (max-width: 900px) { .openlectura-hero-grid, .openlectura-section-heading, .openlectura-local-heading { grid-template-columns: 1fr; }.openlectura-hero-grid { gap: 42px; }.openlectura-section-heading { gap: 24px; }.openlectura-app-preview { max-width: 720px; }.openlectura-local-heading { gap: 18px; } }
@media (max-width: 640px) { .openlectura-hero { padding-bottom: 54px; }.openlectura-hero .product-lockup { margin-bottom: 48px; }.openlectura-hero-copy h1 { font-size: clamp(3.05rem, 14vw, 4.25rem); }.openlectura-hero-lede { font-size: .98rem; }.openlectura-app-preview { border-radius: 16px; }.openlectura-principle-grid, .openlectura-local-grid { grid-template-columns: 1fr; gap: 35px; }.openlectura-principle-grid h3, .openlectura-local-grid h3 { margin-top: 20px; } }
