@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=DM+Serif+Display:ital@0;1&display=swap');
:root{--plum:#412f52;--deep:#2c2239;--mauve:#6d4d73;--coral:#ee927e;--pink:#f7ded8;--cream:#fbf8f3;--sand:#f0eae2;--mint:#dcece4;--ink:#382e40;--muted:#6d6770;--white:#fff;--serif:'DM Serif Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}button{font:inherit}.wrap{width:min(1160px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:8px;top:-50px;z-index:30;background:white;padding:12px}.skip:focus{top:8px}.site-header{position:relative;z-index:20;background:var(--cream);border-bottom:1px solid #e9e2df}.header-inner{height:88px;display:flex;align-items:center;gap:32px}.logo{display:inline-flex;align-items:center;gap:9px;text-decoration:none;white-space:nowrap}.logo-symbol{font:64px/.85 var(--serif);color:var(--plum);letter-spacing:-11px;padding-right:7px}.logo-symbol span{font:25px var(--sans);color:var(--coral);vertical-align:top;margin-left:-4px}.logo-name{font-size:23px;font-weight:800;letter-spacing:-1px;color:var(--plum);line-height:1}.logo-name>span{color:#d87972}.logo-name small{display:block;letter-spacing:2px;font-size:9px;color:var(--muted);margin-top:9px;font-weight:700}.nav{display:flex;gap:25px;align-items:center;margin-left:auto}.nav a{text-decoration:none;font-size:13px;font-weight:700;transition:color .2s}.nav a:hover{color:#c56664}.header-contact{background:var(--plum);color:white;text-decoration:none;padding:13px 20px;border-radius:4px;font-size:13px;font-weight:800;white-space:nowrap}.header-contact span{margin-left:8px}.menu-button{display:none}.hero{background:var(--plum);color:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;min-height:595px;gap:25px;align-items:center;padding-top:48px;padding-bottom:45px}.eyebrow{font-size:11px;letter-spacing:2.5px;font-weight:800;text-transform:uppercase;margin:0 0 24px}.eyebrow.light{color:#f1b5a7}.eyebrow.accent{color:#c6786a}.star{color:#f5ab93;margin-right:9px;font-size:15px}.hero-copy{position:relative;z-index:2;padding:10px 0 10px}.hero h1{font:clamp(56px,5.2vw,82px)/1.06 var(--serif);letter-spacing:-1.5px;margin:0 0 27px}.hero h1 em,.dissertation h2 em,.contact-copy h2 em{color:#f5aa95;font-weight:400}.hero-desc{font-size:17px;line-height:1.9;color:#eee4f0;max-width:505px;margin-bottom:29px}.mail-hero{display:inline-flex;gap:14px;align-items:center;padding:18px 22px;background:#f2a18e;color:var(--deep);border-radius:7px;font-weight:800;text-decoration:none;font-size:17px;transition:transform .2s}.mail-hero:hover{transform:translateY(-3px)}.mail-hero span:last-child{margin-left:9px}.hero-notes{display:flex;flex-wrap:wrap;gap:18px;margin-top:36px;color:#f5e5f3;font-size:12px;font-weight:700}.hero-right{position:relative;padding:20px}.hero-image-frame{position:relative;z-index:2;border:12px solid #e8bec0;border-radius:190px 190px 22px 22px;overflow:hidden;height:500px;box-shadow:28px 26px 0 #5e456b}.hero-image-frame img{height:100%;width:100%;object-fit:cover;object-position:center}.image-sticker{position:absolute;bottom:23px;left:19px;background:#fffaf0;color:var(--plum);padding:17px 20px;border-radius:4px;transform:rotate(-5deg);font:21px/1.15 var(--serif);box-shadow:0 10px 35px #15101933}.image-sticker strong{font-weight:400;font-style:italic}.image-sticker span{color:#d48273;font-size:25px;padding-left:14px}.hero-orbit{position:absolute;inset:3px -15px 35px 35px;border:2px solid #a87889;border-radius:230px 230px 50px 50px;transform:rotate(9deg)}.hero-bottom{background:#6b5178;text-align:center;padding:14px;font-size:10px;letter-spacing:5px;font-weight:800;color:#f3d0c7}.intro-strip{background:#e6d2ce}.intro-strip>.wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:27px 0}.intro-strip p{font:clamp(23px,2.5vw,32px) var(--serif);margin:0;flex:1}.intro-strip em{color:#aa5c67}.intro-strip a{font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.mini-orbit{font-size:38px;color:#a9646c}.section{padding:103px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:41px}.section-heading h2{font:clamp(43px,4vw,61px)/1.1 var(--serif);margin:0;letter-spacing:-.5px;color:var(--plum)}.dot{color:var(--coral)}.section-heading>p{max-width:345px;line-height:1.8;color:var(--muted);margin:0 0 6px;font-size:15px}.service-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{padding:32px 28px;border-radius:12px;min-height:550px;display:flex;flex-direction:column}.service-first{background:#f8dfd9}.service-second{background:#e6e7f0}.service-third{background:#e3ede5}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px}.card-number{font-weight:800;font-size:12px;letter-spacing:2px}.card-icon{font:36px var(--serif)}.service-card h3{font:31px/1.13 var(--serif);color:var(--plum);margin:0 0 14px}.service-card .card-intro{font-size:14px;line-height:1.65;font-weight:700;margin:0 0 15px}.service-card ul{padding-left:18px;margin:0;line-height:1.67;font-size:13px;color:#4b4650}.service-card li{margin:7px 0}.service-card li::marker{color:#ba796b}.model-note{font-size:12px;line-height:1.65;margin-top:17px;padding:16px;background:#ffffff9c;border-radius:8px}.dissertation{background:var(--deep);color:#fff}.dissertation-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.dissertation-lead{position:relative}.dissertation h2{font:clamp(54px,5vw,75px)/1.04 var(--serif);margin:0 0 30px}.dissertation-lead>p:not(.eyebrow){font-size:16px;line-height:1.85;color:#ded4e4;max-width:430px}.button-light{display:inline-flex;align-items:center;gap:18px;text-decoration:none;background:#f5af9d;color:#33243d;padding:17px 22px;font-weight:800;font-size:13px;border-radius:6px;margin-top:20px}.lead-flower{font-size:130px;color:#ad7788;opacity:.3;margin-top:42px}.timeline{border-left:1px solid #806989;padding-left:35px;display:grid;gap:25px}.timeline article{background:#453651;padding:25px 25px 24px;border-radius:8px;display:grid;grid-template-columns:45px 1fr;gap:20px;position:relative}.timeline article:before{content:'';position:absolute;left:-43px;top:35px;width:14px;height:14px;border:3px solid #e4a48f;background:var(--deep);border-radius:50%}.timeline article>span{color:#eea78f;font:28px var(--serif)}.timeline h3{font:26px var(--serif);margin:0 0 9px}.timeline p{line-height:1.7;font-size:13px;color:#e3d9e8;margin:0}.assignments{background:#fffaf5}.assignment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.assignment-grid>div{background:#f2ece6;border:1px solid #ece2de;border-radius:8px;min-height:83px;display:flex;align-items:center;gap:13px;padding:17px 15px;font-size:13px;font-weight:800;color:var(--plum)}.assignment-grid>div:before{content:'✳';font-size:18px;color:#cf8c7e;flex:none}.contact-section{background:#fffaf5;padding:0 0 90px}.contact-panel{display:grid;grid-template-columns:1.05fr .95fr;background:#f1dedc;border-radius:20px;overflow:hidden;min-height:425px}.contact-copy{padding:64px 52px;align-self:center}.contact-copy h2{font:clamp(48px,4.7vw,69px)/1.06 var(--serif);color:var(--plum);margin:0 0 18px}.contact-copy h2 em{color:#bb6a6d}.contact-copy p:not(.eyebrow){color:#5f5662;line-height:1.7;font-size:16px;max-width:440px}.contact-mail{display:inline-flex;align-items:center;gap:14px;background:var(--plum);color:#fff;text-decoration:none;padding:16px 18px;border-radius:5px;font-weight:800;font-size:16px;margin-top:15px}.contact-photo{position:relative;min-height:400px}.contact-photo img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}.contact-bubble{position:absolute;bottom:30px;right:28px;border-radius:100px;background:#fff8ed;color:var(--plum);font:24px/1.13 var(--serif);padding:25px;transform:rotate(9deg)}.site-footer{background:var(--plum);color:#eee6f0;padding:45px 0 25px}.footer-inner{text-align:center}.footer-name{font-size:27px;letter-spacing:-1px;font-weight:800;text-decoration:none;color:#fff}.footer-name span{color:#f1aa96}.footer-star{padding-left:10px}.footer-inner>p{color:#dfd2df;font-size:12px;margin:17px 0 33px}.footer-bottom{border-top:1px solid #ffffff35;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:12px}.footer-bottom a{text-decoration:none}@media(max-width:1050px){.nav{gap:13px}.nav a{font-size:12px}.header-inner{gap:15px}.logo-name{font-size:20px}.hero-grid{grid-template-columns:1fr 1fr}.hero h1{font-size:62px}.dissertation-grid{gap:35px}.service-card{padding:25px 22px}.service-card h3{font-size:27px}}@media(max-width:760px){.wrap{width:min(100% - 36px,560px)}.header-inner{height:76px}.logo-symbol{font-size:54px}.logo-name{font-size:19px}.header-contact{margin-left:auto;padding:11px 13px;font-size:12px}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;border:0;background:transparent;order:2;cursor:pointer}.menu-button span{width:24px;height:2px;background:var(--plum);display:block}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--cream);box-shadow:0 15px 25px #2418291c;padding:20px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:14px 8px;font-size:15px}.hero-grid{grid-template-columns:1fr;padding-top:55px;padding-bottom:55px;gap:33px}.hero h1{font-size:clamp(47px,10vw,68px)}.hero-right{max-width:450px;width:100%;justify-self:center}.hero-image-frame{height:370px;border-width:8px}.hero-desc{font-size:15px}.hero-notes{gap:13px}.intro-strip>.wrap{gap:10px;flex-wrap:wrap}.intro-strip p{font-size:24px}.intro-strip a{width:100%;padding-left:49px}.section{padding:67px 0}.section-heading{display:block}.section-heading>p{margin-top:18px}.service-layout{grid-template-columns:1fr}.service-card{min-height:0;padding:28px}.card-top{margin-bottom:20px}.dissertation-grid{grid-template-columns:1fr;gap:35px}.dissertation h2{font-size:56px}.lead-flower{display:none}.timeline{margin-left:9px}.assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-panel{grid-template-columns:1fr}.contact-copy{padding:45px 25px}.contact-photo{min-height:265px}.footer-bottom{flex-direction:column;align-items:center}.contact-mail,.mail-hero{font-size:clamp(13px,3.5vw,17px)}}@media(max-width:390px){.logo-name small{font-size:7px}.logo-name{font-size:16px}.logo-symbol{font-size:46px}.header-contact{font-size:10px;padding:9px}.assignment-grid{grid-template-columns:1fr}.hero-notes{font-size:10px}.contact-copy h2{font-size:45px}}
