/* 스마트팜 체험 — ivory + ink + lime accent, serif display, organic shapes */
:root{
  --bg:#f4f1e8; --paper:#fbf9f3; --sage:#e7ebdb; --ink:#16231b; --ink2:#243629; --muted:#5b695f;
  --line:rgba(22,35,27,.16); --lime:#d4f06b; --leaf:#7aa63a;
  --serif:'Noto Serif KR','Nanum Myeongjo',serif; --sans:'Pretendard Variable',Pretendard,-apple-system,'Noto Sans KR',sans-serif;
  --r:28px; --wrap:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:76px}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.75;font-size:17px;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
.wrap{width:min(var(--wrap),100% - 40px);margin-inline:auto}
.narrow{max-width:860px}
.wrap.narrow{width:min(860px,100% - 40px)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
.ic{flex:none;stroke:currentColor}
:focus-visible{outline:3px solid var(--leaf);outline-offset:3px}

/* ── header ── */
.hdr{position:sticky;top:0;z-index:50;background:rgba(244,241,232,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;gap:20px;height:68px}
.logo{display:flex;align-items:center;gap:10px;color:var(--ink)}
.logo span{display:flex;flex-direction:column;line-height:1.15}
.logo b{font-family:var(--serif);font-size:19px;letter-spacing:-.02em}
.logo small{font-size:9.5px;letter-spacing:.2em;color:var(--muted)}
.gnb{display:flex;gap:4px;margin-left:auto}
.gnb a{padding:8px 12px;border-radius:999px;font-size:15px;font-weight:500;white-space:nowrap}
.gnb a:hover{background:var(--sage)}
.hdr-tel{display:flex;align-items:center;gap:8px;background:var(--ink);color:var(--lime);padding:9px 16px;border-radius:999px;font-weight:600;font-size:14.5px;white-space:nowrap}
.burger{display:none;margin-left:auto;padding:8px}

/* ── buttons ── */
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 26px;border-radius:999px;font-weight:600;font-size:16px;transition:transform .2s,background .2s}
.btn:hover{transform:translateY(-2px)}
.btn-ink{background:var(--ink);color:#fff}
.btn-ink:hover{background:var(--ink2)}
.btn-ghost{border:1.5px solid var(--ink)}
.btn-ghost:hover{background:var(--ink);color:#fff}
.btn-lime{background:var(--lime);color:var(--ink)}
.btn-line{border:1.5px solid rgba(255,255,255,.55);color:#fff}
.btn-line:hover{background:#fff;color:var(--ink)}
.link-arrow{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-weight:600;border-bottom:1.5px solid var(--ink);padding-bottom:3px}
.link-lt{color:#fff;border-color:var(--lime)}

/* ── photos ── */
.ph{position:relative;overflow:hidden;margin:0;background:#d9dccb;border-radius:var(--r)}
.ph img{width:100%;height:100%;object-fit:cover}
.l43{aspect-ratio:4/3}.p34{aspect-ratio:3/4}.sq{aspect-ratio:1/1}
.arch{border-radius:240px 240px var(--r) var(--r)}
.arch-r{border-radius:var(--r) 220px var(--r) 220px}
.pill{border-radius:999px}

/* ── typography ── */
.serif-h{font-family:var(--serif);font-weight:700;font-size:clamp(28px,4.2vw,46px);line-height:1.28;letter-spacing:-.03em;word-break:keep-all}
.kicker{font-size:12.5px;letter-spacing:.24em;font-weight:700;color:var(--leaf);margin-bottom:12px;text-transform:uppercase}
.kicker-lt{color:var(--lime)}
.muted{color:var(--muted)}
.small{font-size:14.5px;color:var(--muted);margin-top:14px}
.note{font-size:14px;color:var(--muted);margin-top:14px}
.note-lt{color:rgba(255,255,255,.7)}
.prose p{margin-bottom:16px}
.prose b{font-weight:700;background:linear-gradient(transparent 62%,rgba(212,240,107,.7) 0)}
.lead2{font-size:clamp(17px,2vw,20px);margin-top:16px;color:var(--ink2)}
.lead2.lt,.lt-p{color:rgba(255,255,255,.85)}
.lt-p{margin-top:12px;max-width:760px}

/* ── hero ── */
.hero{position:relative;padding:36px 0 80px;overflow:hidden}
.hero::before{content:"";position:absolute;right:-8%;top:-12%;width:56vw;height:56vw;max-width:760px;max-height:760px;border-radius:50%;background:radial-gradient(circle,rgba(212,240,107,.55),rgba(212,240,107,0) 68%);pointer-events:none}
.hero::after{content:"";position:absolute;left:-60px;bottom:30px;width:240px;height:240px;border:1px solid var(--line);border-radius:50% 0 50% 0;pointer-events:none}
.hero-in{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.08fr;grid-template-areas:"head ph" "body ph";column-gap:48px;align-items:center}
.hero-head{grid-area:head;align-self:end}
.hero-body{grid-area:body;align-self:start}
.hero-ph{grid-area:ph;position:relative;padding:0 0 40px}
.eyebrow{font-size:14px;letter-spacing:.12em;font-weight:600;color:var(--leaf);margin-bottom:14px}
.hero h1{font-family:var(--serif);font-weight:700;font-size:clamp(54px,9.6vw,128px);line-height:1;letter-spacing:-.05em;margin-bottom:22px}
.hero-sub{font-family:var(--serif);font-size:clamp(18px,2.2vw,25px);line-height:1.5;font-weight:500;letter-spacing:-.02em}
.lead{font-size:clamp(16px,1.6vw,18px);color:var(--ink2);margin-top:22px;max-width:560px}
.hero-ph .arch{max-height:640px}
.float{position:absolute;left:-30px;bottom:0;width:34%;border:6px solid var(--bg);border-radius:var(--r);box-shadow:0 20px 40px rgba(22,35,27,.18)}
.badge{position:absolute;right:14px;top:22px;background:rgba(251,249,243,.94);padding:10px 16px;border-radius:18px;font-size:13px;line-height:1.35;box-shadow:0 10px 30px rgba(22,35,27,.14)}
.badge .ic{display:inline;vertical-align:-3px;color:var(--leaf)}
.badge b{font-size:14.5px}

/* ── visual story ── */
.story-sec{padding:20px 0 90px}
.story-sec .serif-h{max-width:820px;margin-bottom:36px}
.vs{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:auto auto;gap:18px}
.vs figure{position:relative;overflow:hidden;border-radius:var(--r);margin:0;background:#d9dccb}
.vs img{width:100%;height:100%;object-fit:cover}
.vs-a{grid-row:1/3;aspect-ratio:auto;min-height:520px;border-radius:var(--r) 200px var(--r) var(--r)!important}
.vs-b,.vs-c{aspect-ratio:3/4}
.vs-d{grid-column:2/4;aspect-ratio:16/9}
.vs figcaption{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 16px;color:#fff;font-weight:600;font-size:16px;background:linear-gradient(transparent,rgba(10,20,14,.72))}
.vs figcaption span{display:block;font-family:var(--serif);font-size:34px;line-height:1;color:var(--lime);margin-bottom:4px}

/* ── sections ── */
.sec{padding:96px 0;border-top:1px solid var(--line)}
.sec-sage{background:var(--sage)}
.sec-dark,.feat{background:var(--dark,#16231b);color:#eef2e4;border-top:0}
.two{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.sticky{position:sticky;top:96px}
.tbl-wrap{overflow-x:auto;margin-top:34px;border:1px solid var(--line);border-radius:20px;background:var(--paper);-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;font-size:15.5px;min-width:520px}
th,td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
thead th{background:var(--ink);color:#fff;font-weight:600;border:0;white-space:nowrap}
tbody th{font-weight:700;white-space:nowrap}
tbody tr:last-child th,tbody tr:last-child td{border-bottom:0}

.sb{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.sb-ph{position:relative;padding-bottom:50px}
.sb-ph .float2{position:absolute;right:-18px;bottom:0;width:38%;border:6px solid var(--sage);box-shadow:0 18px 36px rgba(22,35,27,.16)}
.sb-txt p{margin-top:16px}
.ul{margin-top:16px}
.ul li{position:relative;padding:8px 0 8px 22px;border-bottom:1px solid var(--line)}
.ul li::before{content:"";position:absolute;left:0;top:19px;width:9px;height:9px;border-radius:50% 0 50% 0;background:var(--leaf)}
.ul-2{display:grid;grid-template-columns:1fr 1fr;column-gap:26px}

/* featured */
.feat{padding:100px 0}
.feat .serif-h{max-width:900px;color:#fff}
.feat-sub{font-family:var(--serif);font-size:clamp(18px,2.2vw,24px);color:var(--lime);margin:14px 0 40px}
.feat-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}
.feat-main .ph{aspect-ratio:4/3;border-radius:var(--r) var(--r) 200px var(--r)}
.feat-main .ph img,.feat-side .ph img{position:absolute;inset:0}
.feat-side{display:grid;grid-template-rows:repeat(3,1fr);gap:18px}
.feat-side .ph{aspect-ratio:auto;height:100%;min-height:0}
.feat-info{grid-column:1/3;display:grid;grid-template-columns:1fr 1.4fr;gap:40px;align-items:start;padding:34px 0 10px;border-top:1px solid rgba(255,255,255,.2);margin-top:14px}
.facts{display:grid;gap:0;margin-top:14px}
.facts div{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.facts dt{font-weight:700;color:var(--muted);font-size:14.5px}
.facts-lt div{border-color:rgba(255,255,255,.2)}
.facts-lt dt{color:var(--lime)}
.facts-lt{margin-top:0}
.feat-h3{font-family:var(--serif);font-size:24px;margin:56px 0 20px;color:inherit}
.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.mean{padding:26px 22px;border:1px solid var(--line);border-radius:var(--r) var(--r) var(--r) 4px;background:var(--paper)}
.mean h3,.mean h4{font-family:var(--serif);font-size:20px;margin:14px 0 6px}
.mean p{font-size:15px;color:var(--muted);line-height:1.65}
.cards4-lt .mean{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.2)}
.cards4-lt .mean .ic{color:var(--lime)}
.cards4-lt .mean p{color:rgba(255,255,255,.75)}

/* steps (ordered) */
.steps{display:grid;gap:0;counter-reset:s}
.steps li{display:grid;grid-template-columns:78px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}
.steps .n{font-family:var(--serif);font-size:38px;line-height:1;color:transparent;-webkit-text-stroke:1.2px var(--leaf)}
.steps h3{font-family:var(--serif);font-size:21px;margin-bottom:4px}
.steps p{color:var(--muted);font-size:16px}
.ex-ph{margin-top:28px}

/* education */
.ed-head{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;margin-bottom:46px}
.topics{display:grid;grid-template-columns:repeat(3,1fr);gap:0 36px}
.topics li{padding:20px 0;border-top:1px solid var(--line)}
.topics h3{font-family:var(--serif);font-size:20px;margin-bottom:6px}
.topics p{font-size:15.5px;color:var(--muted)}

/* ai garden */
.ai{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}
.ai-ph .arch{max-height:620px}
.big-q{font-family:var(--serif);font-size:clamp(20px,2.6vw,28px);line-height:1.45;margin:18px 0 16px;padding-left:18px;border-left:3px solid var(--lime)}
.feat6{display:grid;grid-template-columns:repeat(3,1fr);gap:0 22px;margin-top:20px}
.feat6 li{padding:18px 0;border-top:1px solid var(--line)}
.feat6 .ic{color:var(--leaf)}
.feat6 h3{font-family:var(--serif);font-size:19px;margin:8px 0 2px}
.feat6 p{font-size:14.5px;color:var(--muted);line-height:1.6}

/* h-scroll cards */
.hscroll{display:flex;gap:20px;overflow-x:auto;padding:30px 0 10px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.hscroll>*{flex:0 0 clamp(250px,26vw,310px);scroll-snap-align:start}
.acard h3,.fac-c h4{font-family:var(--serif);font-size:21px;margin:14px 0 4px}
.acard p,.fac-c p{font-size:15px;color:var(--muted);line-height:1.65}
.acard .ph{transition:transform .3s}
.acard:hover .ph{transform:translateY(-4px)}
.fac .fac-c{flex-basis:clamp(260px,30vw,350px)}
.fac-c p{color:rgba(255,255,255,.78)}
.fac-c .ph{border-radius:var(--r) var(--r) 120px var(--r)}
.sec-dark .hscroll{scrollbar-color:var(--lime) transparent}

.fcards{margin-top:30px;grid-template-columns:repeat(4,1fr);gap:26px 18px}
.fcard h3{font-family:var(--serif);font-size:18px;margin:10px 0 2px;line-height:1.35}
.fcard p{font-size:14.5px;color:var(--muted)}
.tag{display:inline-block;margin-top:12px;font-size:12px;font-weight:700;letter-spacing:.05em;padding:3px 10px;border-radius:999px;background:var(--lime);color:var(--ink)}

.flow7{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin:34px 0 0;border-top:1px solid rgba(255,255,255,.25)}
.flow7 li{padding:18px 12px 0 0;font-weight:600;font-size:15px;line-height:1.4}
.flow7 span{display:block;font-family:var(--serif);font-size:30px;color:var(--lime);margin-bottom:6px}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}
.region{display:grid;grid-template-columns:38% 1fr;gap:22px;padding:22px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper);align-items:center;transition:box-shadow .3s}
.region:hover{box-shadow:0 18px 40px rgba(22,35,27,.12)}
.region h3{font-family:var(--serif);font-size:24px;margin-bottom:6px}
.region p{font-size:15.5px;color:var(--muted)}
.more{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-weight:600;font-size:14.5px;color:var(--ink)}
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 28px;margin-top:30px}
.rgrid a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:22px 4px;border-top:1px solid var(--line);font-family:var(--serif);font-size:19px;font-weight:700;transition:padding .25s,color .25s}
.rgrid a:hover{padding-left:14px;color:var(--leaf)}
.flow6{display:grid;grid-template-columns:repeat(6,1fr);gap:0;margin-top:36px}
.flow6 li{padding:22px 18px 0 0;border-top:2px solid var(--ink);position:relative}
.flow6 li::before{content:"";position:absolute;top:-6px;left:0;width:10px;height:10px;border-radius:50%;background:var(--lime);border:2px solid var(--ink)}
.flow6 span{font-family:var(--serif);font-size:30px;color:transparent;-webkit-text-stroke:1.2px var(--leaf)}
.flow6 h3{font-family:var(--serif);font-size:20px;margin:4px 0}
.flow6 p{font-size:14.5px;color:var(--muted);line-height:1.55}
.chain{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.chain li{font-size:13.5px;font-weight:600;padding:6px 14px;border:1px solid var(--ink);border-radius:999px}
.chain li:not(:last-child)::after{content:"→";margin-left:10px;color:var(--leaf)}

/* faq (always open) */
.faq{margin-top:30px}
.qa{padding:26px 0;border-top:1px solid var(--line)}
.qa:last-child{border-bottom:1px solid var(--line)}
.qa h3{font-family:var(--serif);font-size:clamp(18px,2.2vw,22px);line-height:1.45;margin-bottom:10px}
.qa h3::before{content:"Q. ";color:var(--leaf)}
.qa p{color:var(--ink2)}

/* CTA */
.cta{background:var(--ink);color:#fff;padding:96px 0;text-align:center;position:relative;overflow:hidden}
.cta::before{content:"";position:absolute;left:50%;top:-40%;width:900px;height:900px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(212,240,107,.22),transparent 65%);pointer-events:none}
.cta-in{position:relative}
.cta h2{font-family:var(--serif);font-size:clamp(28px,4.4vw,48px);line-height:1.3;letter-spacing:-.03em}
.cta p{margin-top:16px;color:rgba(255,255,255,.82)}
.cta-btns{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:30px}
.cta-tel a{color:var(--lime);font-weight:700;font-size:20px}

/* footer */
.ftr{background:#0f1812;color:rgba(255,255,255,.78);padding:64px 0 28px;font-size:14.5px}
.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:44px}
.logo-lt{color:#fff}.logo-lt small{color:rgba(255,255,255,.55)}
.biz{margin-top:16px;line-height:1.9}
.biz a{color:var(--lime)}
.ftr-h{font-size:13px;letter-spacing:.14em;color:var(--lime);margin-bottom:12px}
.ftr li{padding:4px 0}
.ftr li a:hover{color:#fff;text-decoration:underline}
.copy{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);font-size:13px;color:rgba(255,255,255,.5)}

/* ── sub pages ── */
.sub-hero{padding:34px 0 60px;position:relative;overflow:hidden}
.sub-hero::before{content:"";position:absolute;right:-10%;top:-30%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(212,240,107,.4),transparent 68%);pointer-events:none}
.sub-hero-in{position:relative;display:grid;gap:44px}
.sub-hero.has-ph .sub-hero-in{grid-template-columns:1.05fr 1fr;align-items:center}
.sub-txt h1{font-family:var(--serif);font-weight:700;font-size:clamp(34px,5.4vw,64px);line-height:1.15;letter-spacing:-.04em;margin:14px 0 20px}
.sub-txt .lead{margin-top:0;max-width:640px}
.sub-ph{position:relative;padding-bottom:40px}
.sub-side{position:absolute;left:-26px;bottom:0;display:flex;gap:12px}
.sub-side .ph{width:clamp(96px,11vw,136px);border:5px solid var(--bg);box-shadow:0 12px 26px rgba(22,35,27,.16)}
.crumb ol{display:flex;flex-wrap:wrap;gap:6px;font-size:13.5px;color:var(--muted)}
.crumb li:not(:last-child)::after{content:"/";margin-left:6px}
.crumb a:hover{text-decoration:underline}
.blk{padding:64px 0;border-top:1px solid var(--line)}
.blk-tint{background:var(--sage)}
.blk h2{font-family:var(--serif);font-size:clamp(24px,3.2vw,34px);line-height:1.35;letter-spacing:-.03em;margin-bottom:18px}
.blk p{margin-bottom:14px}
.blk .ul{margin-bottom:6px}
.blk .tbl-wrap{margin-top:8px}
.gal{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.gal figure{margin:0}
.gal figcaption{font-size:13.5px;color:var(--muted);margin-top:8px;line-height:1.45}
.gal .ph{border-radius:20px}
.rel{display:flex;flex-direction:column}
.rel a{display:flex;justify-content:space-between;align-items:center;padding:16px 4px;border-top:1px solid var(--line);font-weight:600}
.rel li:last-child a{border-bottom:1px solid var(--line)}
.rel a:hover{color:var(--leaf)}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 24px;margin-top:10px}
.cards2{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:10px}
.card{display:block}
.card .ph{margin-bottom:12px}
.card h3{font-family:var(--serif);font-size:21px;margin:8px 0 4px;line-height:1.35}
.card p{font-size:15px;color:var(--muted);margin-bottom:6px}
.card .use{color:var(--ink2);font-weight:600;font-size:14px}
.cards2 .card{padding:30px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 24px}
.chips li{padding:5px 14px;border:1px solid var(--line);border-radius:999px;background:var(--paper);font-size:14.5px}
.blk h3{font-family:var(--serif);font-size:19px;margin-top:20px}
.story{display:grid;gap:56px;margin-top:20px}
.story li{display:grid;grid-template-columns:1fr 1.2fr;gap:44px;align-items:center}
.story li.rev .story-txt{order:2}
.story-ph{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.big-n{font-family:var(--serif);font-size:72px;line-height:1;color:transparent;-webkit-text-stroke:1.3px var(--leaf)}
.story h3{margin-top:6px}

/* ── responsive ── */
@media (max-width:1060px){
  .gnb a{padding:8px 9px;font-size:14px}.hdr-tel span{display:none}.hdr-tel{padding:10px}
}
@media (max-width:900px){
  body{font-size:16.5px}
  .burger{display:block}
  .hdr-tel{margin-left:auto}.burger{margin-left:0}
  .gnb{position:absolute;left:0;right:0;top:68px;flex-direction:column;background:var(--bg);padding:10px 20px 20px;border-bottom:1px solid var(--line);display:none;gap:0}
  .gnb.open{display:flex}
  .gnb a{padding:14px 6px;border-bottom:1px solid var(--line);border-radius:0;font-size:16.5px}
  .hero{padding:20px 0 56px}
  .hero-in{grid-template-columns:1fr;grid-template-areas:"head" "ph" "body";row-gap:0}
  .hero-ph{padding-bottom:0;margin-top:14px}
  .hero-ph .arch{aspect-ratio:16/11;border-radius:120px 120px var(--r) var(--r);max-height:none}
  .float{width:28%;left:-6px;bottom:-22px}
  .badge{right:8px;top:12px;font-size:12px;padding:8px 12px}
  .hero-body{margin-top:18px;display:flex;flex-direction:column}
  .hero-body .btn-row{order:-1;margin-top:0}
  .hero-body .lead{margin-top:20px}
  .hero h1{margin-bottom:12px}
  .vs{grid-template-columns:1fr 1fr}
  .vs-a{grid-column:1/3;grid-row:auto;min-height:0;aspect-ratio:4/3}
  .vs-d{grid-column:1/3}
  .sec{padding:64px 0}
  .two,.sb,.ed-head,.ai,.sub-hero.has-ph .sub-hero-in,.story li{grid-template-columns:1fr;gap:30px}
  .story li.rev .story-txt{order:0}
  .sticky{position:static}
  .sb-ph .float2{right:-6px}
  .feat{padding:68px 0}
  .feat-grid{grid-template-columns:1fr}
  .feat-main .ph{aspect-ratio:4/3;border-radius:var(--r) var(--r) 120px var(--r)}
  .feat-side{grid-template-rows:none;grid-template-columns:repeat(3,1fr)}
  .feat-side .ph{aspect-ratio:3/4;height:auto}
  .feat-info{grid-column:auto;grid-template-columns:1fr;gap:18px}
  .cards4,.fcards{grid-template-columns:1fr 1fr}
  .topics{grid-template-columns:1fr 1fr}
  .feat6{grid-template-columns:1fr 1fr}
  .ai-ph .arch{aspect-ratio:3/3.2;max-height:none;border-radius:140px 140px var(--r) var(--r)}
  .flow7{grid-template-columns:repeat(4,1fr);row-gap:10px}
  .duo,.cards2{grid-template-columns:1fr}
  .rgrid{grid-template-columns:1fr 1fr}
  .flow6{grid-template-columns:repeat(3,1fr);row-gap:26px}
  .cards3{grid-template-columns:1fr 1fr}
  .gal{grid-template-columns:repeat(3,1fr)}
  .ftr-grid{grid-template-columns:1fr;gap:30px}
  .sub-side{left:8px;bottom:-10px}
  .sub-ph{padding-bottom:30px}
}
@media (max-width:600px){
  .wrap{width:min(var(--wrap),100% - 32px)}
  .btn{width:100%}.btn-row{gap:10px}
  .hero-sub{font-size:18px}
  .hero-ph .arch{aspect-ratio:16/12}
  .vs-b,.vs-c{aspect-ratio:1/1}
  .ul-2{grid-template-columns:1fr}
  .cards4,.fcards{grid-template-columns:1fr 1fr;gap:14px}
  .mean{padding:20px 16px}
  .feat6{grid-template-columns:1fr 1fr;gap:0 14px}
  .topics{grid-template-columns:1fr}
  .steps li{grid-template-columns:58px 1fr}.steps .n{font-size:30px}
  .flow7{grid-template-columns:1fr 1fr}
  .region{grid-template-columns:34% 1fr;padding:16px;gap:14px}
  .rgrid{grid-template-columns:1fr}
  .flow6{grid-template-columns:1fr 1fr}
  .cards3{grid-template-columns:1fr}
  .gal{grid-template-columns:1fr 1fr}
  .facts div{grid-template-columns:96px 1fr}
  .cta{padding:68px 0}
  .logo b{font-size:17px}
  .hdr-in{gap:12px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.blk .steps h3,.blk .qa h3{margin-top:0}
/* 긴 시설명이 좁은 화면에서 넘치지 않도록 */
.sub-txt,.crumb,.crumb li{min-width:0}
.sub-txt h1,.crumb li,.serif-h{overflow-wrap:anywhere}
@media (max-width:420px){.sub-txt h1{font-size:30px}}

/* ── 모바일 터치 영역·가독성 (44px 기준) ── */
@media (max-width:900px){
  .logo{min-height:44px}
  .hdr-tel,.burger{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .link-arrow{min-height:44px;margin-top:12px;align-items:center}
  .crumb ol{gap:0 4px}
  .crumb a,.crumb span{display:inline-block;padding:11px 3px}
  .ftr li a{display:block;padding:10px 0}
  .biz a,.cta-tel a,.small a{display:inline-block;padding:10px 4px}
  .more{min-height:44px;align-items:center}
  .rel a{min-height:52px}
  .gnb a{min-height:48px;display:flex;align-items:center}
  .tag{font-size:13px;padding:4px 11px}
  .chain li,.gal figcaption,.note{font-size:14px}
  .tbl-wrap{margin-left:-2px;margin-right:-2px}
  .tbl-wrap::after{content:"";display:block}
}
@media (max-width:900px){.crumb a{padding:11px 10px 11px 0;min-width:44px}.facts a{display:inline-block;padding:10px 0}}
/* PC 히어로 H1 한 줄 */
@media (min-width:901px){.hero h1{white-space:nowrap;font-size:clamp(48px,6.4vw,92px)}}
