:root{--paper:#fbf7f0;--card:#fffdf8;--ink:#1c1b19;--muted:#55504a;--teal:#17605c;--brass:#7c5917;--danger:#9b2c22;--line:#d4cbbd;--soft:#eceee5;--radius:16px;--space:4px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,'Noto Sans KR',sans-serif;font-size:17px;line-height:1.7;word-break:keep-all;overflow-wrap:anywhere}a{color:var(--teal);text-underline-offset:5px}button,select,input{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid var(--teal);border-radius:8px;background:var(--teal);color:white;padding:12px 20px;min-height:48px;text-decoration:none;cursor:pointer;font-size:16px;font-weight:600;line-height:1.6}button:hover,.button:hover{background:#104743}button.secondary,.button.secondary{background:transparent;color:var(--teal)}button.danger{background:var(--danger);border-color:var(--danger)}button:disabled{opacity:1;background:#e3ded3;border-color:#c0b7a7;color:#554e44;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--brass);outline-offset:4px}button:active{transform:translateY(1px)}.skip{position:absolute;top:-100px;left:16px;background:var(--ink);color:white;z-index:10;padding:12px}.skip:focus{top:8px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,4.6vw,64px);line-height:1.3;letter-spacing:-.055em;font-weight:550;margin-bottom:24px}h2{font-size:clamp(26px,3vw,38px);line-height:1.4;letter-spacing:-.045em;font-weight:550;margin-bottom:20px}h3{font-size:20px;line-height:1.5;font-weight:650;margin-bottom:12px}p{margin-bottom:16px}.small,small{font-size:14px}.muted,.field-help{color:var(--muted)}.lead{font-size:20px;line-height:1.8}.eyebrow{color:var(--teal);font-size:12px;letter-spacing:.15em;font-weight:700;margin-bottom:20px}.demo-banner{min-height:36px;display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 16px;background:var(--teal);color:#fff;font-size:12px;letter-spacing:.025em}.dot{width:5px;height:5px;border-radius:50%;background:#efd3a4}.site-header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1280px;margin:auto;padding:28px 48px;border-bottom:1px solid var(--line)}.brand{font-size:22px;font-weight:600;text-decoration:none;letter-spacing:-.05em;display:flex;align-items:center;gap:10px;color:var(--ink);white-space:nowrap}.brand small{font-size:11px;letter-spacing:0;color:var(--muted);margin-left:16px;font-weight:400}.brand-mark{color:var(--teal);font-family:Georgia,serif;font-style:italic;font-size:36px;line-height:1}.brand-mark span{color:var(--brass)}nav{display:flex;gap:28px;flex-wrap:wrap}nav a{font-size:14px;color:var(--muted);text-decoration:none}nav a[aria-current],nav a:hover{color:var(--teal);text-decoration:underline}.identity-strip{max-width:1184px;margin:auto;display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.hero{max-width:1280px;margin:auto;padding:76px 48px 72px;display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}.hero .muted{font-size:15px}.actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:24px 0}.text-link{font-size:15px;font-weight:600;text-decoration:none}.hero-foot{font-size:12px;color:var(--muted);margin-top:44px;display:flex;align-items:center;gap:14px}.tiny-rule{width:30px;height:1px;background:var(--brass)}.hero-art{position:relative}.hero-art svg{width:100%;height:auto;display:block}.art-caption{text-align:center;margin-top:20px;font-size:14px;display:grid;gap:4px}.art-caption small{font-size:11px;color:var(--muted)}.section{max-width:1280px;padding:64px 48px;margin:auto;border-top:1px solid var(--line)}.section-heading>p:not(.eyebrow){font-size:15px;color:var(--muted)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;padding:16px 0 0;list-style:none}.process-grid li{border-top:1px solid var(--line);padding-top:20px}.process-grid li>span{font-family:Georgia,serif;color:var(--brass);font-size:28px}.process-grid h3{margin-top:16px}.process-grid p{font-size:15px;color:var(--muted)}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:80px}.three-column{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.three-column p{font-size:15px;color:var(--muted)}.three-column strong{display:block;color:var(--ink);font-size:17px;margin-bottom:8px}.note{border-left:2px solid var(--brass);padding-left:20px;margin-top:32px}.note p{font-size:14px;color:var(--muted)}.note h3{font-size:17px}.card{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:var(--card);min-width:0}.card h3{margin-top:12px}.card p:last-child{margin-bottom:0}.badge{display:inline-block;padding:4px 10px;border-radius:4px;background:var(--soft);color:var(--teal);font-size:12px;line-height:1.8;font-weight:600}.badge.warn{color:var(--brass);background:#f1e7d2}.badge.danger{color:var(--danger);background:#fbe7df}label{display:block;font-size:15px;font-weight:600;margin:16px 0 8px}select,input{width:100%;background:var(--card);color:var(--ink);border:1px solid #8c8375;border-radius:6px;padding:12px;min-height:48px;font-size:16px}.field-help{font-size:13px;margin-top:8px}form>button{margin-top:12px}footer{border-top:1px solid var(--line);max-width:1280px;margin:32px auto 0;padding:36px 48px 44px;color:var(--muted);font-size:13px}footer .brand{font-size:20px;margin-bottom:16px}footer p{margin-bottom:8px}.workspace{max-width:1280px;margin:auto;padding:48px;min-height:60vh}.workspace h1{font-size:38px}.page-heading{display:flex;justify-content:space-between;gap:24px;align-items:center}.page-heading .eyebrow{margin-bottom:12px}.narrow{max-width:760px}.notice{padding:16px 20px;background:var(--soft);border-left:3px solid var(--teal);font-size:15px;margin:20px 0 28px}.notice.warning{background:#f4eadd;border-color:var(--brass)}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}.role-card{display:grid;gap:12px}.role-card .badge{justify-self:start}.role-card button{width:100%;justify-content:space-between}.subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px}.subnav a{padding:8px 14px;border:1px solid var(--line);border-radius:6px;font-size:14px;text-decoration:none}.subnav a[aria-current]{color:white;background:var(--teal);border-color:var(--teal)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0 28px}.stat{padding:20px 24px;border:1px solid var(--line);border-radius:12px}.stat strong{font-family:Georgia,serif;font-size:32px;color:var(--teal);display:block;font-weight:400}.stat span{font-size:13px;color:var(--muted)}.toolbar{display:flex;align-items:end;gap:16px;margin-bottom:24px}.toolbar label{margin-top:0}.toolbar>div{flex:1}.case-list{display:grid;gap:16px}.case-row{display:grid;grid-template-columns:minmax(0,1fr) 1.2fr auto;gap:24px;align-items:center}.case-row h3{font-size:18px}.case-row p{font-size:14px;color:var(--muted);margin:8px 0}.case-id{font-size:12px;display:block;color:var(--muted);word-break:break-all}.case-title{display:block;color:var(--ink);text-decoration:none;font-size:19px;font-weight:600}.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.stack{display:grid;gap:24px}.meta-line{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin-bottom:20px}.timeline{list-style:none;padding:0}.timeline li{padding:0 0 24px 24px;border-left:1px solid var(--line);position:relative;font-size:14px}.timeline li::before{content:'';position:absolute;left:-5px;top:9px;width:9px;height:9px;border-radius:50%;background:var(--teal)}.timeline time{display:block;color:var(--muted);font-size:12px}.timeline strong{font-weight:600}.translation-text{white-space:pre-wrap;font-size:18px;line-height:1.9;padding:20px;background:var(--paper);border-radius:8px;min-height:110px}.progress-steps{display:flex;gap:8px;list-style:none;padding:0;flex-wrap:wrap}.progress-steps li{padding:6px 10px;border:1px solid var(--line);font-size:12px;border-radius:4px;color:var(--muted)}.progress-steps li.current{background:var(--teal);color:#fff;border-color:var(--teal)}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.button-row button{flex:1 1 140px;min-width:0}.divider{border-top:1px solid var(--line);margin:24px 0}dl{display:grid;grid-template-columns:auto 1fr;gap:8px 24px;font-size:15px}dt{color:var(--muted)}dd{margin:0}.request-status:empty{display:none}.request-status{position:fixed;bottom:20px;right:20px;background:var(--teal);color:white;padding:12px 20px;border-radius:8px;z-index:8;font-size:15px;max-width:calc(100% - 40px)}.request-error{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);width:min(640px,calc(100% - 32px));background:var(--card);border:2px solid var(--danger);border-radius:12px;padding:20px;z-index:10;box-shadow:0 8px 30px #1c1b1920}.request-error p{font-size:15px;margin-bottom:12px}.request-error button{padding:8px 16px;margin-right:8px;min-height:44px}.empty{text-align:center;padding:48px 20px;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}.skeleton{padding:48px;background:var(--soft);border-radius:12px}.safety{border-color:#b0a28c}.success{margin-top:20px;border-left:3px solid var(--teal);padding:16px;background:var(--soft)}.screen-label{font-size:12px;letter-spacing:.12em;color:var(--brass);font-weight:700}.language-switch{max-width:300px}.schedule-status{font-size:24px;color:var(--teal)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:12px}
@media(max-width:1000px){.brand small{display:none}.site-header,.workspace,.section,footer{padding-left:28px;padding-right:28px}.hero{padding:48px 28px;gap:24px}.hero h1{font-size:42px}.identity-strip{padding-left:28px;padding-right:28px}.two-column{gap:36px}.hero .actions{gap:16px}.case-row{grid-template-columns:1fr 1fr}.case-row>.button{grid-column:1/-1;justify-self:start}.hero-foot{margin-top:28px}}
@media(max-width:640px){body{font-size:16px}.banner-extra{display:none}.site-header{padding:18px 20px;gap:14px;align-items:flex-start;flex-direction:column}.brand{font-size:21px}.brand-mark{font-size:30px}nav{gap:24px}nav a{font-size:13px;min-height:28px}.identity-strip{padding:10px 20px;flex-wrap:wrap;gap:4px}.hero{grid-template-columns:1fr;padding:40px 20px 36px;gap:24px}.hero h1{font-size:clamp(30px,8.7vw,36px)}.hero .lead{font-size:18px}.hero .muted{font-size:14px}.hero-art{max-width:340px;margin:auto}.hero-art svg{max-height:280px}.hero-foot{margin-top:24px}.eyebrow{font-size:11px;margin-bottom:16px}.hero .actions{align-items:stretch;flex-direction:column}.hero .text-link{text-align:center;padding:8px}.section,.workspace{padding:36px 20px}.process-grid,.two-column,.three-column,.grid,.role-grid{grid-template-columns:1fr;gap:20px}.process-grid li{padding-top:16px}.process-grid h3{margin-top:8px}.process-grid p br{display:none}.process-grid li>span{font-size:23px}.card{padding:20px}.note{margin-top:24px}.two-column{gap:24px}.three-column{gap:8px}.workspace h1{font-size:30px}.page-heading{align-items:flex-start;flex-direction:column;gap:0}.page-heading .text-link{margin-bottom:24px}.stats{gap:8px}.stat{padding:14px 12px}.stat strong{font-size:26px}.stat span{font-size:11px}.toolbar{flex-direction:column;align-items:stretch;gap:12px}.case-row{grid-template-columns:1fr;gap:8px}.case-row>.button{justify-self:stretch}.subnav{gap:6px}.subnav a{font-size:13px;padding:8px 10px}.button-row{gap:8px}.button-row button{font-size:14px;padding:10px 12px;flex-basis:40%}.translation-text{font-size:17px;padding:16px}.notice{padding:14px 16px}.meta-line{gap:6px;font-size:12px}footer{padding:28px 20px}.small,small{font-size:13px}dl{grid-template-columns:1fr;gap:4px}dd{margin-bottom:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}button:active{transform:none}}

/* Reserve the navigation and loading surface so initial content does not move the visible footer. */
#screen{min-height:100vh}#case-nav{min-height:76px}body[data-page="crm"] #case-nav{display:none}

/* Approved romantic homepage. Workspace styles remain unchanged. */
body[data-page="public"]{--paper:#faf7f3;--card:#fffdfa;--ink:#432e32;--muted:#65565a;--teal:#602c3c;--brass:#825565;--line:#ded1cf;--soft:#f0e6e4;background:var(--paper)}
body[data-page="public"] .demo-banner{background:#f0e7e3;color:#60454b;min-height:28px;font-size:11px;padding:3px 12px}
body[data-page="public"] .dot{background:#805063}
body[data-page="public"] .romantic-header{max-width:1600px;padding:20px 4.5%;border:0;align-items:center;min-height:98px;gap:24px}
body[data-page="public"] .romantic-brand{font-family:Georgia,'Times New Roman',serif;font-size:54px;letter-spacing:.025em;font-weight:400;color:var(--teal);line-height:1;gap:18px}
body[data-page="public"] .romantic-brand small{font-family:system-ui,sans-serif;font-size:12px;letter-spacing:.03em;color:var(--teal);margin:0}
body[data-page="public"] nav{gap:30px}body[data-page="public"] nav a{color:var(--teal);font-size:15px}
body[data-page="public"] .header-cta{font-size:14px;min-height:44px;padding:9px 19px;white-space:nowrap;font-weight:400}
body[data-page="public"] .button:hover,body[data-page="public"] button:hover{background:#44202d}
body[data-page="public"] h1,body[data-page="public"] h2{font-family:'Noto Serif CJK KR','Noto Serif KR',Batang,Georgia,serif;font-weight:400;letter-spacing:-.055em;color:var(--teal)}
.romantic-hero{position:relative;isolation:isolate;min-height:650px;max-width:1800px;margin:auto;background:#f7f3ee;overflow:hidden;display:flex;align-items:center}
.hero-photo{position:absolute;z-index:-2;inset:0 0 0 29%}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:65% center;display:block}
.romantic-hero::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#faf7f3 0%,#faf7f3 20%,#faf7f3f5 30%,#faf7f3a8 40%,#faf7f300 56%)}
.romantic-copy{padding:64px 4.8%;width:58%;max-width:820px}.romantic-copy .eyebrow{font-family:Georgia,serif;font-size:11px;letter-spacing:.28em;font-weight:400;margin-bottom:27px}
body[data-page="public"] .romantic-copy h1{font-size:clamp(42px,4.25vw,68px);line-height:1.35;margin-bottom:28px;white-space:normal}
.romantic-copy .lead{font-size:18px;color:#5f4a50;line-height:1.9}.romantic-copy .actions{gap:24px;margin-top:30px;align-items:center}
.romantic-copy .button{font-weight:400;font-size:15px;padding:14px 20px;border-radius:5px}.romantic-copy .text-link{font-size:14px;font-weight:400;border-bottom:1px solid #98717c;padding:8px 0}
.photo-caption{position:absolute;right:4%;bottom:24px;color:white;font-size:13px;text-shadow:0 1px 5px #000;margin:0;background:#30211e80;padding:4px 10px;border-radius:2px}
.romantic-story{max-width:1600px;margin:auto;padding:48px 4.5% 20px;display:grid;grid-template-columns:1.18fr 1fr 1fr;gap:24px;align-items:center}
.story-copy{padding-right:20px}.story-copy .eyebrow{font-size:10px;font-weight:400;letter-spacing:.18em}.story-copy h2{font-size:clamp(25px,2.35vw,37px);line-height:1.5;margin-bottom:16px}.story-copy p:not(.eyebrow){font-size:15px;line-height:1.9}.story-rule{display:block;width:48px;height:1px;background:#b8a19f;margin:22px 0}
.story-photo{display:block;position:relative;aspect-ratio:1.38;overflow:hidden;color:white;background:#ece1da}.story-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.story-photo:hover img{transform:scale(1.035)}.story-photo::after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#211615b0)}.story-photo span{position:absolute;left:22px;right:22px;bottom:17px;z-index:1;color:white;font-size:18px;font-weight:400}.story-photo b{font-weight:400;margin-left:16px}.image-disclosure{grid-column:1/-1;text-align:right;font-size:11px;color:#6c5c60;margin:0 0 8px}
body[data-page="public"] .process-section{max-width:1456px;margin-top:45px;padding-top:64px}.process-section .section-heading{text-align:center}.process-section .section-heading h2{font-size:38px}.process-section .process-grid{margin-top:42px;gap:56px}.process-section .process-grid h3{font-size:19px;font-weight:500}.process-section .process-grid li>span{font-style:italic}
body[data-page="public"] #intake{background:#f1e7e3;border:0;margin-top:32px;max-width:1456px;padding:66px 5%;align-items:start}body[data-page="public"] #intake h2{font-size:38px}.commitment{border:0!important;padding-top:36px!important;padding-bottom:12px!important}.commitment summary{cursor:pointer;font-size:15px;color:var(--muted);padding:12px 0}.commitment details[open]>.eyebrow{margin-top:24px}
@media(min-width:1600px){.romantic-copy{padding-left:6%}.romantic-hero{min-height:740px}}
@media(max-width:1100px){body[data-page="public"] .romantic-brand{font-size:44px}body[data-page="public"] .romantic-brand small{display:none}body[data-page="public"] nav{gap:18px}.romantic-copy{width:64%;padding-left:4%}.romantic-hero{min-height:620px}.hero-photo{left:22%}.romantic-copy .actions{gap:14px}.romantic-story{gap:18px;grid-template-columns:1fr 1fr}.story-copy{grid-column:1/-1;display:block;max-width:700px}.story-copy h2 br{display:none}.story-copy .story-rule{display:none}.story-copy p{margin-bottom:8px}.story-photo{aspect-ratio:1.6}}
@media(max-width:700px){body[data-page="public"] .romantic-header{padding:18px 20px 14px;min-height:0;display:grid;grid-template-columns:1fr auto;gap:17px 12px}body[data-page="public"] .romantic-brand{font-size:41px}body[data-page="public"] .header-cta{font-size:12px;padding:8px 12px;min-height:40px;gap:8px}body[data-page="public"] nav{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:12px}body[data-page="public"] nav a{font-size:13px;padding:5px 0}.romantic-hero{display:block;min-height:0;padding-top:320px}.hero-photo{inset:0 0 auto;height:350px}.hero-photo img{object-position:62% center}.romantic-hero::after{background:linear-gradient(0deg,#faf7f3 0%,#faf7f3 47%,#faf7f300 65%)}.romantic-copy{width:100%;max-width:none;padding:18px 24px 36px;position:relative}.romantic-copy .eyebrow{font-size:10px;letter-spacing:.21em;margin-bottom:18px}body[data-page="public"] .romantic-copy h1{font-size:clamp(34px,9.5vw,48px);line-height:1.4;margin-bottom:20px}.romantic-copy .lead{font-size:16px}.romantic-copy .actions{align-items:stretch;gap:14px;margin:24px 0 0;flex-direction:column}.romantic-copy .text-link{align-self:flex-start;font-size:14px}.photo-caption{top:290px;bottom:auto;font-size:10px;right:16px}.romantic-story{padding:32px 20px 16px;gap:16px}.story-copy{padding:0}.story-copy h2{font-size:29px}.story-copy h2 br{display:block}.story-copy p:not(.eyebrow){font-size:14px}.story-photo{aspect-ratio:.85}.story-photo span{left:12px;right:8px;bottom:12px;font-size:14px}.story-photo b{display:block;margin:0}.image-disclosure{text-align:left;line-height:1.7;font-size:11px}body[data-page="public"] .process-section{margin-top:18px;padding-top:40px}.process-section .section-heading h2{font-size:31px}.process-section .process-grid{margin-top:25px;gap:24px}body[data-page="public"] #intake{margin-top:16px;padding:40px 20px}body[data-page="public"] #intake h2{font-size:31px}}
/* Let enlarged mobile text reflow instead of widening the header. */
@media(max-width:700px){body[data-page="public"] .romantic-header{display:flex;flex-wrap:wrap;justify-content:space-between}body[data-page="public"] .header-cta{white-space:normal;max-width:100%;flex-wrap:wrap}body[data-page="public"] .romantic-header nav{order:3;flex-basis:100%;flex-wrap:wrap}body[data-page="public"] .romantic-header nav a{max-width:100%}}
