/* HERO */
.hero { padding-top: clamp(8rem, 12vw, 12rem); padding-bottom: 6rem; border-bottom: 2px solid var(--black); }
.hero__label { grid-column: 1/-1; font-family: var(--font-heading); font-weight: 800; font-size: 1.25rem; margin-bottom: 2rem; display: block; color: var(--gray-text); text-transform: uppercase; letter-spacing: 0.1em; }
.hero__title { grid-column: 1/12; font-family: var(--font-heading); font-weight: 800; font-size: clamp(4rem, 10vw, 9rem); line-height: 0.9; letter-spacing: -0.03em; color: var(--black); margin-bottom: 3rem; text-transform: uppercase; }
.hero__subtitle { grid-column: 1/8; font-family: var(--font-body); font-weight: 500; font-size: clamp(1.25rem, 2vw, 1.5rem); color: var(--black); line-height: 1.5; border-left: 4px solid var(--accent); padding-left: 2rem; }
@media (max-width: 768px) { .hero { padding-top: clamp(5rem, 10vw, 8rem); padding-bottom: 3rem; } .hero__label { font-size: 1rem; margin-bottom: 1.25rem; } .hero__title { grid-column: 1/-1; font-size: clamp(2.5rem, 8vw, 4rem); word-break: break-word; overflow-wrap: break-word; } .hero__subtitle { grid-column: 1/-1; padding-left: 1.25rem; } }
@media (max-width: 480px) { .intro-section { padding: 3rem 0; } .intro-section__text { font-size: 1rem; } }

/* INTRO SECTION */
.intro-section { padding: 5rem 0; border-bottom: 2px solid var(--black); }
.intro-section__text { grid-column: 1/9; font-family: var(--font-body); font-size: 1.125rem; color: var(--gray-text); line-height: 1.75; }
@media (max-width: 768px) { .intro-section__text { grid-column: 1/-1; } }

/* PRODUCTS SECTION */
.products-section { padding: clamp(4rem, 6vw, 6rem) 0; border-bottom: 2px solid var(--black); background: var(--gray-light); }

.product-row { grid-column: 1/-1; display: grid; grid-template-columns: 7fr 4fr; gap: 4rem; padding: 3rem; background: var(--white); border: 1px solid rgba(0,0,0,0.07); border-radius: 2px; align-items: start; }
.product-row__title { font-family: var(--font-heading); font-weight: 800; font-size: clamp(1.5rem, 2.5vw, 2.25rem); letter-spacing: -0.03em; line-height: 1.1; color: var(--black); margin-bottom: 1.25rem; }
.product-row__desc { font-size: 1rem; color: var(--gray-text); line-height: 1.7; margin-bottom: 1.75rem; }
.product-row__features { list-style: none; margin-bottom: 1.5rem; }
.product-row__features li { font-size: 0.9375rem; color: var(--black); padding: 0.5rem 0; border-bottom: 1px solid var(--gray-light); display: flex; gap: 0.75rem; }
.product-row__features li::before { content: '→'; color: var(--accent); font-weight: 700; flex-shrink: 0; }
.product-row__note { font-size: 0.875rem; color: var(--gray-text); line-height: 1.6; font-style: italic; }
.product-row__right { display: flex; flex-direction: column; gap: 2rem; padding-top: 0.25rem; border-left: 1px solid var(--gray-light); padding-left: 3rem; }
.product-row__hw { font-family: var(--font-heading); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; color: var(--gray-text); background: var(--gray-light); padding: 0.5rem 0.875rem; border-radius: 2px; width: fit-content; }
.product-row__price { display: flex; flex-direction: column; gap: 0.4rem; }
.product-row__price-main { font-family: var(--font-heading); font-size: clamp(1.375rem, 2vw, 1.75rem); font-weight: 800; letter-spacing: -0.03em; color: var(--black); line-height: 1.1; }
.product-row__price-detail { font-size: 0.875rem; color: var(--gray-text); line-height: 1.55; }
@media (max-width: 900px) { .product-row { grid-template-columns: 1fr; gap: 2rem; } .product-row__right { border-left: none; padding-left: 0; border-top: 1px solid var(--gray-light); padding-top: 2rem; } }
@media (max-width: 600px) { .product-row { padding: 1.75rem 1.25rem; } .product-row__features li { font-size: 0.875rem; } }

/* TECH SECTION */
.tech-section { background: var(--gray-light); padding: clamp(6rem, 10vw, 10rem) 0; border-top: 2px solid var(--black); }
.tech-section__label { font-family: var(--font-heading); font-size: 0.8125rem; font-weight: 700; color: var(--accent); text-transform: uppercase; letter-spacing: 0.2em; grid-column: 1/-1; margin-bottom: 2rem; }
.tech-section__title { font-family: var(--font-heading); font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 800; color: var(--black); letter-spacing: -0.04em; line-height: 1.05; grid-column: 1/-1; margin-bottom: 5rem; }
.tech-cols { grid-column: 1/-1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 3rem; border-top: 1px solid rgba(0,0,0,0.12); padding-top: 4rem; }
.tech-col__number { font-family: var(--font-heading); font-size: 0.75rem; font-weight: 700; color: var(--accent); text-transform: uppercase; letter-spacing: 0.2em; margin-bottom: 1.5rem; }
.tech-col__title { font-family: var(--font-heading); font-size: 1.375rem; font-weight: 800; color: var(--black); letter-spacing: -0.02em; margin-bottom: 1rem; }
.tech-col__text { font-size: 0.9375rem; color: var(--gray-text); line-height: 1.7; }
@media (max-width: 1024px) { .tech-cols { grid-template-columns: 1fr; gap: 2.5rem; } }
@media (max-width: 600px) { .tech-section { padding: clamp(4rem, 8vw, 6rem) 0; } .tech-section__title { margin-bottom: 3rem; } .tech-cols { padding-top: 2.5rem; } }

/* PULL QUOTE */
.pull-quote { padding: clamp(6rem, 10vw, 10rem) 0; background: var(--white); }
.pull-quote__text { font-family: var(--font-heading); font-size: clamp(2.5rem, 5vw, 5rem); font-weight: 800; letter-spacing: -0.04em; line-height: 1.05; grid-column: 1/10; color: var(--black); }
.pull-quote__text em { font-style: normal; color: var(--accent); }
@media (max-width: 1024px) { .pull-quote__text { grid-column: 1/-1; } }
@media (max-width: 480px) { .pull-quote { padding: clamp(4rem, 8vw, 6rem) 0; } .pull-quote__text { font-size: clamp(1.75rem, 6vw, 2.5rem); } }
