*{box-sizing:border-box}:root{--navy:#0f2540;--navy-2:#17365c;--ink:#1b2432;--gold:#c0a05a;--gold-soft:#d8c290;--gold-deep:#9c7c3e;--cream:#f8f4ec;--cream-2:#f2ecdf;--paper:#ffffff;--muted:#5f6b7a;--line:#e7e0d3;--shadow-sm:0 1px 2px rgba(15,37,64,.04),0 4px 16px rgba(15,37,64,.05);--shadow-md:0 6px 20px rgba(15,37,64,.08),0 16px 40px rgba(15,37,64,.06);--brand:var(--navy);--font-body:"Pretendard",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",system-ui,sans-serif;--font-serif:var(--font-display),"Cormorant Garamond",Georgia,serif}body,html{margin:0;padding:0}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;line-height:1.6}button,input,textarea{font-family:inherit}a{color:inherit}.landing{color:var(--ink)}.eyebrow,.hero-eyebrow{display:inline-block;font-size:.78rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-deep)}.section-head{text-align:center;max-width:660px;margin:0 auto 3rem;padding:0 1.5rem}.section-head h2{font-size:clamp(1.5rem,3.4vw,2.15rem);font-weight:700;letter-spacing:-.01em;margin:.7rem 0 .6rem;color:var(--navy);line-height:1.3}.section-head h2:after{content:"";display:block;width:44px;height:2px;margin:1.1rem auto 0;border-radius:2px;background:linear-gradient(90deg,var(--gold),var(--gold-soft))}.section-head p{color:var(--muted);margin:1rem 0 0}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){[data-reveal]{animation:reveal-up linear both;animation-timeline:view();animation-range:entry 5% cover 22%}}}@keyframes reveal-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.hero{position:relative;overflow:hidden;text-align:center;min-height:74vh;display:flex;align-items:center;justify-content:center;padding:6.5rem 1.5rem;color:#f3ede1;background:radial-gradient(120% 90% at 50% -10%,rgba(192,160,90,.2),transparent 60%),linear-gradient(160deg,#0d2038,#14335a 55%,#0f2743);background-size:cover;background-position:50%}.hero:after{left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.hero:after,.hero:before{content:"";position:absolute}.hero:before{inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.055) 1px,transparent 1.5px);background-size:26px 26px;-webkit-mask-image:radial-gradient(130% 100% at 50% 0,#000 35%,transparent 72%);mask-image:radial-gradient(130% 100% at 50% 0,#000 35%,transparent 72%)}.hero-inner{position:relative;z-index:1;max-width:760px}.hero-eyebrow{color:var(--gold-soft);margin-bottom:1.4rem}.brand{font-family:var(--font-serif);font-weight:600;font-size:clamp(2.6rem,8vw,4.6rem);line-height:1;letter-spacing:.04em;margin:0;color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.25)}.hero h1{font-size:clamp(1.15rem,3.2vw,1.7rem);font-weight:500;line-height:1.5;margin:1.6rem auto .8rem;max-width:30ch;color:#eef2f8}.hero .subtitle{color:#c7d2e0;font-size:clamp(.95rem,2.2vw,1.05rem);max-width:34ch;margin:0 auto}.hero-cta{display:inline-block;margin-top:2.2rem;padding:.95rem 2.4rem;border-radius:999px;text-decoration:none;font-weight:700;color:var(--navy);background:linear-gradient(180deg,var(--gold-soft),var(--gold));box-shadow:0 10px 28px rgba(192,160,90,.35);transition:transform .18s ease,box-shadow .18s ease}.hero-cta:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(192,160,90,.45)}.reframe{background:var(--cream);padding:6rem 1.5rem}.reframe-inner{max-width:720px;margin:0 auto;text-align:center}.reframe h2{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;color:var(--navy);line-height:1.35;margin:1rem 0 1.8rem;letter-spacing:-.01em}.reframe h2 .line{display:block}.reframe-quotes{list-style:none;padding:0;margin:0 auto 2rem;display:grid;grid-gap:.7rem;gap:.7rem;max-width:460px}.reframe-quotes li{font-family:var(--font-serif);font-style:italic;font-size:1.35rem;color:var(--gold-deep)}.reframe-body{color:var(--muted);font-size:1.05rem;line-height:1.8;max-width:600px;margin:0 auto}.why{padding:6rem 1.5rem;background:var(--paper)}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.2rem;gap:1.2rem;max-width:1060px;margin:0 auto}.why-card{text-align:center;padding:2.2rem 1.4rem;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.why-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.why-icon{display:inline-grid;place-items:center;width:62px;height:62px;border-radius:50%;color:var(--gold-deep);background:linear-gradient(160deg,#fbf6ea,#f2e6c9);border:1px solid var(--gold-soft);margin-bottom:1.1rem}.why-card h3{margin:0 0 .45rem;font-size:1.1rem;color:var(--navy)}.why-card p{margin:0;font-size:.92rem;color:var(--muted);line-height:1.65}.pillars{padding:6rem 1.5rem;background:var(--cream)}.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;max-width:1000px;margin:0 auto}.pillar{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:2.4rem 2rem;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease;overflow:hidden}.pillar:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-soft))}.pillar:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.pillar-icon{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:16px;color:var(--gold-deep);background:#fbf6ea;border:1px solid var(--gold-soft);margin-bottom:1.3rem}.pillar-no{position:absolute;top:.8rem;right:1.4rem;font-family:var(--font-serif);font-size:3.4rem;font-weight:600;color:var(--gold);opacity:.16;line-height:1}.pillar h3{margin:0;font-size:1.35rem;color:var(--navy)}.pillar-tagline{margin:.2rem 0 1rem;font-size:.9rem;color:var(--gold-deep);font-weight:600}.pillar-desc{margin:0;color:var(--muted);line-height:1.75}.fields{background:var(--paper);padding:6rem 1.5rem}.field-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem;max-width:940px;margin:0 auto}.field{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.35rem;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:1.4rem 1.6rem;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.field:hover{transform:translateY(-3px);border-color:var(--gold-soft);box-shadow:var(--shadow-md)}.field-index{position:absolute;top:.7rem;right:1.1rem;font-family:var(--font-serif);font-weight:600;font-size:1.7rem;color:var(--gold);opacity:.3;line-height:1}.field-name{font-size:1.15rem;font-weight:700;color:var(--navy);position:relative;padding-left:1rem}.field-name:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:var(--gold)}.field-jobs{color:var(--muted);font-size:.92rem;padding-left:1rem}.fields-note{text-align:center;max-width:620px;margin:2.5rem auto 0;color:var(--navy);font-family:var(--font-serif);font-style:italic;font-size:1.25rem}.approach{padding:6rem 1.5rem;background:var(--cream)}.approach-grid{display:grid;grid-template-columns:1.3fr 1fr;grid-gap:2.5rem;gap:2.5rem;max-width:980px;margin:0 auto;align-items:start}.test-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:1rem;gap:1rem}.test-item{display:flex;gap:1.2rem;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:1.4rem 1.5rem;box-shadow:var(--shadow-sm)}.test-no{font-family:var(--font-serif);font-size:1.7rem;font-weight:600;color:var(--gold);line-height:1;flex:none}.test-item h4{margin:0 0 .3rem;font-size:1.08rem;color:var(--navy)}.test-item p{margin:0;color:var(--muted);font-size:.95rem}.outcome-list{list-style:none;margin:0;padding:2rem 1.8rem;display:grid;grid-gap:1.1rem;gap:1.1rem;align-self:stretch;border-radius:16px;color:#eaf0f7;background:linear-gradient(165deg,var(--navy-2),var(--navy));box-shadow:var(--shadow-md)}.outcome-list li{position:relative;padding-left:2rem;line-height:1.45}.outcome-list li:before{content:"✓";position:absolute;left:0;top:-1px;color:var(--gold-soft);font-weight:700}.philosophy{background:var(--navy);color:#eef2f8;padding:5.5rem 1.5rem;text-align:center}.philosophy p{position:relative;max-width:760px;margin:0 auto;font-size:clamp(1.15rem,2.6vw,1.5rem);line-height:1.7;font-weight:400}.philosophy p:before{content:"\201C";display:block;font-family:var(--font-serif);font-size:4rem;line-height:.3;color:var(--gold);margin-bottom:1.2rem}.steps{max-width:960px;margin:0 auto;padding:6rem 1.5rem;text-align:center}.steps-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem;max-width:820px;margin:0 auto;text-align:left}.step{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:2rem 1.8rem;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.step:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.step-badge{width:2.6rem;height:2.6rem;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:1.05rem;margin-bottom:1rem;color:var(--gold-deep);background:#fbf6ea;border:1px solid var(--gold-soft)}.step h3{margin:0 0 .5rem;font-size:1.2rem;color:var(--navy)}.step p{margin:0;color:var(--muted)}.reference{background:var(--cream);padding:6rem 1.5rem}.reference-hint{font-size:.85rem;color:var(--muted);margin-top:.6rem}.reference-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem;max-width:900px;margin:0 auto}.reference-item{display:block;border-radius:14px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow-md);transition:transform .2s ease,box-shadow .2s ease}.reference-item:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(15,37,64,.14)}.reference-item img{width:100%;height:auto;display:block}.reviews{padding:6rem 1.5rem;background:var(--paper)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;max-width:1040px;margin:0 auto}.review-card{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:2rem 1.8rem 1.6rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.review-quote{position:absolute;top:.4rem;right:1.1rem;font-family:var(--font-serif);font-size:3.4rem;color:var(--gold);opacity:.22;line-height:1}.review-content{margin:0 0 1.3rem;color:var(--ink);line-height:1.75;white-space:pre-wrap}.review-meta{margin-top:auto;display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:.9rem}.review-author{font-weight:700;color:var(--navy)}.review-date{font-size:.85rem;color:var(--muted)}.consult{max-width:960px;margin:0 auto;padding:6rem 1.5rem;text-align:center}.consult-form{display:grid;grid-gap:1.2rem;gap:1.2rem;max-width:480px;margin:0 auto;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:2.2rem;box-shadow:var(--shadow-sm)}.consult-form>label{display:grid;grid-gap:.45rem;gap:.45rem;font-weight:600;font-size:.92rem;color:var(--navy)}.consult-form .req{color:#d4463b;font-style:normal;margin-left:.2rem}.consult-form input,.consult-form textarea{padding:.85rem 1rem;border:1px solid var(--line);border-radius:10px;font-size:1rem;background:#fcfaf6;width:100%;transition:border-color .15s ease,box-shadow .15s ease}.consult-form textarea{resize:vertical;min-height:96px;line-height:1.55}.consult-form input:focus,.consult-form textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(192,160,90,.18);background:#fff}.consult-form input::placeholder,.consult-form textarea::placeholder{color:#b7b0a3}.consult-form input[type=date]{color:var(--ink)}.consult-form .referral{border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem;display:grid;grid-gap:.7rem;gap:.7rem;margin:0;background:#fcfaf6}.consult-form .referral legend{font-weight:600;font-size:.92rem;color:var(--navy);padding:0 .3rem}.consult-form .radio{display:flex;align-items:center;gap:.55rem;font-weight:500;font-size:.95rem;color:var(--ink);cursor:pointer}.consult-form .radio input[type=radio]{width:auto;accent-color:var(--gold-deep);margin:0}.consult-form .radio-other{flex-wrap:wrap}.consult-form .radio .other-input{flex:1 1;min-width:140px;padding:.5rem .7rem;font-size:.92rem}.consult-form button{margin-top:.3rem;padding:.95rem;border:none;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;color:#fff;background:linear-gradient(180deg,var(--navy-2),var(--navy));box-shadow:0 8px 22px rgba(15,37,64,.22);transition:transform .18s ease,box-shadow .18s ease}.consult-form button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,37,64,.3)}.consult-form button:disabled{opacity:.6;cursor:default}.form-error{color:#b91c1c;margin:0;font-size:.9rem}.form-done{max-width:420px;margin:0 auto;padding:1.5rem;border-radius:14px;text-align:center;background:#f4f0e6;border:1px solid var(--gold-soft);color:var(--navy);font-weight:500;box-shadow:var(--shadow-sm)}.site-footer{text-align:center;padding:3rem 1.5rem;background:var(--navy);color:#b9c4d4;font-family:var(--font-serif);letter-spacing:.1em;font-size:1.1rem}@media (max-width:860px){.why-grid{grid-template-columns:1fr 1fr;max-width:520px}.pillar-grid{grid-template-columns:1fr;max-width:460px}.field-grid{grid-template-columns:1fr 1fr}.approach-grid{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr 1fr;max-width:640px}}@media (max-width:640px){.hero{min-height:66vh;padding:4.5rem 1.25rem}.approach,.consult,.fields,.pillars,.reference,.reframe,.reviews,.steps,.why{padding:4rem 1.25rem}.review-grid{max-width:380px}.review-grid,.why-grid{grid-template-columns:1fr}.why-grid{max-width:340px}.field-grid{max-width:360px}.field-grid,.reference-grid,.steps-grid{grid-template-columns:1fr}}.admin-login{min-height:100vh;display:grid;place-items:center;background:var(--cream)}.admin-login form{display:grid;grid-gap:1rem;gap:1rem;width:340px;padding:2.4rem;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-md)}.admin-login h1{margin:0 0 .5rem;font-size:1.3rem;color:var(--navy);text-align:center}.admin-login input{padding:.8rem;border:1px solid var(--line);border-radius:10px;font-size:1rem}.admin-login button{padding:.85rem;border:none;border-radius:10px;background:var(--navy);color:#fff;font-weight:700;cursor:pointer}.admin{max-width:1000px;margin:0 auto;padding:1.5rem}.admin-header{display:flex;justify-content:space-between;align-items:center}.admin-header h1{color:var(--navy)}.admin-header button{padding:.5rem 1rem;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer}.admin-tabs{display:flex;gap:.5rem;margin:1rem 0;border-bottom:1px solid var(--line)}.admin-tabs button{padding:.6rem 1rem;border:none;background:none;cursor:pointer;font-size:1rem;color:var(--muted)}.admin-tabs button.active{border-bottom:2px solid var(--gold);color:var(--navy);font-weight:600}.admin-table{width:100%;border-collapse:collapse}.admin-table td,.admin-table th{padding:.6rem;border-bottom:1px solid var(--line);text-align:left}.lead-list{display:grid;grid-gap:1rem;gap:1rem;max-width:640px}.lead-card{border:1px solid var(--line);border-radius:12px;padding:1.2rem 1.4rem;background:var(--paper);box-shadow:var(--shadow-sm)}.lead-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:.7rem;margin-bottom:.7rem}.lead-card-head strong{color:var(--navy);font-size:1.1rem}.lead-time{color:var(--muted);font-size:.82rem}.lead-fields{display:grid;grid-template-columns:auto 1fr;grid-gap:.35rem 1rem;gap:.35rem 1rem;margin:0}.lead-fields dt{color:var(--muted);font-size:.9rem}.lead-fields dd{margin:0;color:var(--ink)}.lead-fields dd a{color:var(--gold-deep)}.lead-note{white-space:pre-wrap}.lead-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;max-width:640px}.badge-new{color:#b45309;background:#fef3c7;border-radius:999px;padding:.1rem .6rem;font-size:.8rem}.lead-card.confirmed{opacity:.72}.tag-new{font-weight:700;color:#b45309;background:#fef3c7}.tag-confirmed,.tag-new{margin-left:.5rem;font-size:.7rem;border-radius:999px;padding:.05rem .5rem;vertical-align:middle}.tag-confirmed{font-weight:600;color:#047857;background:#d1fae5}.lead-actions{display:flex;gap:.5rem;margin-top:1rem;border-top:1px solid var(--line);padding-top:.9rem}.primary-btn{padding:.45rem 1rem;border:none;border-radius:8px;background:var(--navy);color:#fff;font-weight:600;cursor:pointer}.ghost-btn{border:1px solid var(--line);border-radius:8px;color:var(--ink)}.danger-btn,.ghost-btn{padding:.45rem 1rem;background:#fff;cursor:pointer}.danger-btn{border:1px solid #f3c4c0;border-radius:8px;color:#b91c1c;font-weight:600}.student-row{display:flex;align-items:center;gap:.25rem}.student-select{flex:1 1}.row-icon{border:1px solid var(--line);background:#fff;border-radius:6px;cursor:pointer;padding:.35rem .5rem;font-size:.85rem;line-height:1}.row-icon.danger{color:#b91c1c}.students{display:grid;grid-template-columns:240px 1fr;grid-gap:1.5rem;gap:1.5rem}.add-student{display:flex;gap:.4rem;margin-bottom:1rem}.add-student input{flex:1 1;padding:.5rem;border:1px solid var(--line);border-radius:6px}.students-list ul{list-style:none;padding:0;margin:0;display:grid;grid-gap:.25rem;gap:.25rem}.students-list li button{width:100%;text-align:left;padding:.5rem;border:1px solid var(--line);background:#fff;border-radius:6px;cursor:pointer}.students-list li button.active{border-color:var(--gold);color:var(--navy);font-weight:600}.student-detail section{margin-bottom:2rem}.student-detail textarea{width:100%;padding:.7rem;border:1px solid var(--line);border-radius:8px;font-size:1rem}.file-list{padding-left:1rem}.calc{border:1px solid var(--line);border-radius:12px;padding:1.25rem;background:var(--paper);box-shadow:var(--shadow-sm)}.calc-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.calc-row span{width:90px}.calc-row input[type=number]{flex:1 1}.calc-row .extra-name,.calc-row input[type=number]{padding:.5rem;border:1px solid var(--line);border-radius:6px}.calc-row .extra-name{width:120px}.link-btn{background:none;border:none;color:var(--gold-deep);cursor:pointer;padding:0;margin-bottom:.5rem}.calc-result{font-weight:700;font-size:1.3rem;margin:.75rem 0;color:var(--navy)}.calc button:not(.link-btn){padding:.6rem 1.1rem;border:none;background:var(--navy);color:#fff;border-radius:8px;cursor:pointer}.calc-msg{margin-left:.5rem;color:var(--gold-deep)}.profit-history{margin-top:1rem;padding-left:1rem;color:var(--muted)}.consult-date-row{display:flex;align-items:center;gap:.6rem;font-weight:600;color:var(--navy);margin-bottom:.7rem}.consult-date-row input{padding:.45rem .6rem;border:1px solid var(--line);border-radius:6px}.calc-standalone{max-width:480px}.hint-text{color:var(--muted);font-size:.9rem;margin:0 0 1rem}.reviews-admin{max-width:640px}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 1.4rem;border:1px solid var(--line);border-radius:12px;background:var(--paper);margin-bottom:1.5rem}.toggle-row strong{color:var(--navy)}.toggle-row .hint-text{margin:.25rem 0 0}.switch{position:relative;width:52px;height:30px;border-radius:999px;border:none;background:#cfd6df;cursor:pointer;transition:background .2s ease;flex:none}.switch.on{background:var(--gold)}.switch .knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s ease}.switch.on .knob{transform:translateX(22px)}.review-form{display:grid;grid-gap:.7rem;gap:.7rem;padding:1.3rem;border:1px solid var(--line);border-radius:12px;background:var(--paper);margin-bottom:1.5rem}.review-form h3{margin:0;color:var(--navy);font-size:1.05rem}.review-form input,.review-form textarea{padding:.6rem .8rem;border:1px solid var(--line);border-radius:8px;font-size:.95rem}.review-form button{justify-self:start;padding:.55rem 1.2rem;border:none;border-radius:8px;background:var(--navy);color:#fff;font-weight:600;cursor:pointer}.review-admin-list{display:grid;grid-gap:.7rem;gap:.7rem}.review-admin-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.2rem;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.review-admin-item .rc{margin:0 0 .3rem;white-space:pre-wrap}.review-admin-item .ra{color:var(--muted);font-size:.88rem}.review-admin-item button{padding:.4rem .8rem;border:1px solid var(--line);background:#fff;border-radius:6px;cursor:pointer;color:#b91c1c;flex:none}.schedule{max-width:760px}.cal-header{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-bottom:1rem}.cal-header strong{color:var(--navy);font-size:1.1rem;min-width:8rem;text-align:center}.cal-header button{width:2rem;height:2rem;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer;font-size:1.1rem;line-height:1}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.cal-weekdays{margin-bottom:4px}.cal-wd{text-align:center;font-size:.82rem;color:var(--muted);padding:.3rem 0;font-weight:600}.cal-cell{min-height:78px;border:1px solid var(--line);border-radius:8px;background:var(--paper);padding:.3rem;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px;font:inherit;overflow:hidden;transition:border-color .15s ease}.cal-cell.empty{border:none;background:transparent;cursor:default}.cal-cell:hover:not(.empty){border-color:var(--gold-soft)}.cal-cell.selected{border-color:var(--gold);box-shadow:0 0 0 2px rgba(192,160,90,.25)}.cal-cell.is-today .cal-day{color:var(--gold-deep);font-weight:700}.cal-day{font-size:.82rem;color:var(--ink)}.cal-chip{font-size:.68rem;background:#f2ecdf;color:var(--navy);border-radius:4px;padding:1px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-more{font-size:.68rem;color:var(--muted)}.day-detail{margin-top:1.5rem;border-top:1px solid var(--line);padding-top:1.2rem}.day-detail-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.day-detail-head h3{margin:0;color:var(--navy);font-size:1.05rem}.day-detail-head button{padding:.45rem 1rem;border:none;border-radius:8px;background:var(--navy);color:#fff;font-weight:600;cursor:pointer}.day-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.6rem;gap:.6rem}.day-list li{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;border:1px solid var(--line);border-radius:10px;background:var(--paper)}.day-list strong{color:var(--navy)}.sched-student{color:var(--muted);font-weight:500}.sched-memo{margin:.35rem 0 0;color:var(--muted);font-size:.9rem}.sched-actions{display:flex;gap:.4rem;flex:none}.sched-actions button{padding:.35rem .7rem;border:1px solid var(--line);background:#fff;border-radius:6px;cursor:pointer;font-size:.85rem}.sched-form{margin-top:1.2rem;display:grid;grid-gap:.7rem;gap:.7rem;padding:1.3rem;border:1px solid var(--gold-soft);border-radius:12px;background:#fcfaf6}.sched-form h4{margin:0;color:var(--navy)}.sched-form label{display:grid;grid-gap:.3rem;gap:.3rem;font-size:.88rem;font-weight:600;color:var(--navy)}.sched-form input,.sched-form textarea{padding:.55rem .75rem;border:1px solid var(--line);border-radius:8px;font-size:.95rem;font-family:inherit}.sched-form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.7rem;gap:.7rem}.sched-form-actions{display:flex;gap:.5rem}.sched-form-actions button{padding:.55rem 1.2rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;background:var(--navy);color:#fff}.sched-form-actions .ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}@media (max-width:640px){.students{grid-template-columns:1fr}.cal-cell{min-height:58px}}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond Fallback;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_30721a{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.__variable_30721a{--font-display:"Cormorant Garamond","Cormorant Garamond Fallback"}