/* shared component library for the 20 "실내스마트팜" detail pages
   loaded after smartfarm.css — reuses --dark/--green/--green-light/--cream/--radius */

.breadcrumb{max-width:1200px;margin:0 auto;padding:120px 24px 0;font-size:.85rem;color:#888;}
.breadcrumb a{color:var(--green);}

/* generic section wrapper */
.d-section{padding:90px 24px;max-width:1200px;margin:0 auto;}
.d-section.bg-white{background:#fff;max-width:none;}
.d-section.bg-white>*{max-width:1200px;margin-left:auto;margin-right:auto;}
.d-section.bg-dark{background:var(--dark);color:#fff;max-width:none;}
.d-section.bg-dark>*{max-width:1200px;margin-left:auto;margin-right:auto;}
.d-eyebrow{color:var(--green);font-weight:700;font-size:.85rem;letter-spacing:.1em;margin-bottom:10px;}
.bg-dark .d-eyebrow{color:var(--green-light);}
.d-title{font-size:clamp(1.5rem,3.4vw,2.2rem);font-weight:800;margin-bottom:18px;letter-spacing:-.02em;}
.d-lead{color:#555;font-size:1.05rem;max-width:720px;line-height:1.8;}
.bg-dark .d-lead{color:rgba(255,255,255,.75);}
.d-body{color:#444;line-height:1.9;font-size:1rem;max-width:760px;}
.d-body p{margin-bottom:18px;}

/* hero variants */
.d-hero{position:relative;min-height:64vh;display:flex;align-items:flex-end;overflow:hidden;color:#fff;}
.d-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.d-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,22,.25),rgba(11,31,22,.85));z-index:1;}
.d-hero__inner{position:relative;z-index:2;padding:120px 24px 64px;max-width:1200px;margin:0 auto;width:100%;}
.d-hero__kicker{letter-spacing:.3em;font-size:.85rem;opacity:.8;margin-bottom:14px;}
.d-hero h1{font-size:clamp(2rem,5vw,3.4rem);font-weight:800;margin-bottom:14px;}
.d-hero__sub{font-size:1.1rem;opacity:.92;max-width:640px;margin-bottom:28px;}

/* split hero (two-photo) for magazine-style pages */
.d-hero--split{min-height:56vh;}
.d-hero--split .d-hero__cols{position:absolute;inset:0;display:flex;z-index:0;}
.d-hero--split .d-hero__cols div{flex:1;overflow:hidden;}
.d-hero--split .d-hero__cols img{position:static;width:100%;height:100%;object-fit:cover;}
@media(max-width:760px){.d-hero--split .d-hero__cols{flex-direction:column;}}

/* timeline (installation / step-by-step storytelling) */
.d-timeline{max-width:820px;margin:0 auto;position:relative;padding-left:48px;}
.d-timeline::before{content:"";position:absolute;left:19px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--green),var(--green-light));}
.d-timeline__step{position:relative;margin-bottom:48px;}
.d-timeline__step:last-child{margin-bottom:0;}
.d-timeline__num{position:absolute;left:-48px;top:0;width:40px;height:40px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;}
.d-timeline__step h3{font-size:1.15rem;margin-bottom:8px;}
.d-timeline__step p{color:#555;line-height:1.75;}
.d-timeline__step img{margin-top:14px;border-radius:var(--radius);width:100%;max-height:320px;object-fit:cover;}

/* asymmetric magazine media-text pair */
.d-magazine{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;margin-bottom:100px;}
.d-magazine:last-child{margin-bottom:0;}
.d-magazine--rev{grid-template-columns:.9fr 1.1fr;}
.d-magazine--rev .d-magazine__media{order:2;}
.d-magazine__media img{border-radius:var(--radius);width:100%;object-fit:cover;height:420px;}
.d-magazine__text h3{font-size:1.5rem;font-weight:700;margin-bottom:14px;letter-spacing:-.02em;}
.d-magazine__text p{color:#555;line-height:1.85;}
@media(max-width:900px){.d-magazine,.d-magazine--rev{grid-template-columns:1fr;}.d-magazine--rev .d-magazine__media{order:0;}}

/* info / feature cards */
.d-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;}
.d-card{background:#fff;border-radius:var(--radius);padding:28px 24px;box-shadow:0 4px 20px rgba(0,0,0,.06);}
.bg-dark .d-card{background:rgba(255,255,255,.06);box-shadow:none;}
.d-card img{width:100%;height:150px;object-fit:cover;border-radius:var(--radius);margin-bottom:14px;}
.d-card__icon{font-size:1.7rem;display:block;margin-bottom:12px;}
.d-card h4{font-size:1.05rem;margin-bottom:8px;}
.d-card p{color:#666;font-size:.92rem;line-height:1.7;}
.bg-dark .d-card p{color:rgba(255,255,255,.7);}

/* compare table (manual vs automated etc.) */
.d-compare{width:100%;border-collapse:collapse;max-width:900px;margin:0 auto;}
.d-compare th,.d-compare td{padding:16px 18px;border-bottom:1px solid #e6e4dc;text-align:left;font-size:.95rem;}
.d-compare th{color:var(--green);font-weight:700;}
.d-compare tr:first-child th{border-bottom:2px solid var(--green);}

/* stat bar */
.d-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:48px;text-align:center;}
.d-stat b{display:block;font-size:2.2rem;font-weight:800;color:var(--green-light);}
.d-stat span{font-size:.85rem;opacity:.75;}

/* pull quote (brand story pages) */
.d-quote{max-width:760px;margin:0 auto;text-align:center;font-size:clamp(1.3rem,2.6vw,1.8rem);font-weight:700;line-height:1.6;position:relative;padding:0 24px;}
.d-quote::before{content:"“";color:var(--green-light);font-size:3rem;display:block;line-height:1;margin-bottom:8px;}

/* image gallery strip */
.d-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.d-strip img{border-radius:var(--radius);height:200px;width:100%;object-fit:cover;}
@media(max-width:760px){.d-strip{grid-template-columns:repeat(2,1fr);}}

/* checklist */
.d-checklist{list-style:none;max-width:640px;margin:0 auto;}
.d-checklist li{padding:12px 0 12px 32px;position:relative;border-bottom:1px solid #eae8e0;line-height:1.6;}
.d-checklist li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:800;}

/* final cta band (image bg) */
.d-final-cta{position:relative;padding:120px 24px;text-align:center;overflow:hidden;color:#fff;}
.d-final-cta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.d-final-cta::after{content:"";position:absolute;inset:0;background:rgba(6,20,13,.72);z-index:1;}
.d-final-cta__inner{position:relative;z-index:2;max-width:640px;margin:0 auto;}
.d-final-cta h2{font-size:clamp(1.6rem,3.6vw,2.2rem);margin-bottom:16px;}
.d-final-cta p{opacity:.9;margin-bottom:28px;}

/* vertical block-scroll for module/vertical-farm pages */
.d-blocks{display:flex;flex-direction:column;gap:2px;}
.d-block{display:grid;grid-template-columns:1fr 1fr;min-height:60vh;}
.d-block__media{position:relative;}
.d-block__media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.d-block__text{background:var(--dark);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:60px;}
.d-block:nth-child(even){direction:rtl;}
.d-block:nth-child(even)>*{direction:ltr;}
.d-block__text .d-eyebrow{color:var(--green-light);}
.d-block__text h3{font-size:1.6rem;margin-bottom:14px;}
.d-block__text p{opacity:.8;line-height:1.8;}
@media(max-width:760px){.d-block{grid-template-columns:1fr;min-height:auto;}.d-block__media{height:280px;}.d-block__text{padding:36px 24px;}}

@media(max-width:600px){
  .d-stats{gap:28px;}
}

/* comparison tables can overflow narrow phones — allow horizontal scroll instead of squeezing */
.d-compare-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
@media(max-width:640px){
  .d-compare{min-width:520px;}
}
