@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#24374b;background:#fff;--pink:#f8dce7;--blue:#dceef6;--accent:#ab4268;--ink:#24374b;--heading:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:130px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #22608c;outline-offset:5px}.chooser{background:#24374b;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 3.5%;position:sticky;top:0;z-index:5;box-shadow:0 2px 15px #24374b18}.chooser strong{font-size:14px}.chooser span{display:block;font-size:12px;opacity:.7;margin-top:4px}.choices{display:flex;gap:6px}.choices button{border:1px solid #788797;background:transparent;color:white;padding:12px 18px;border-radius:7px;font-size:14px}.choices button[aria-pressed=true]{background:#f8dce7;color:#24374b;border-color:#f8dce7}.chooser p{font-size:12px;max-width:140px;line-height:1.5}.site{max-width:1680px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:25px 7%;border-bottom:1px solid #e7e9ec}.logo{width:205px;height:auto}nav{display:flex;gap:32px;font-size:15px}nav a:hover{color:var(--accent)}.header-cta{font-size:14px;border:1px solid #aec8d7;border-radius:30px;padding:12px 22px}.hero{display:grid;grid-template-columns:1fr 1fr;padding:65px 8% 70px;gap:30px;background:#fff9fc;min-height:650px;overflow:hidden}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2.2px;margin:0 0 22px}.hero h1{font-family:var(--heading);font-size:clamp(48px,4.7vw,76px);line-height:1.09;font-weight:500;letter-spacing:-2px;margin:0 0 25px}h1 em{color:var(--accent);font-weight:500}.intro{font-size:16px;line-height:1.8;color:#536070}.primary{border:0;background:var(--ink);color:white;padding:17px 25px;display:inline-flex;gap:32px;align-items:center;border-radius:28px;font-size:14px;margin-top:15px}.primary:hover{background:var(--accent)}.handwritten{font:italic 22px var(--heading);color:var(--accent);margin-top:24px}.hero-art{position:relative;align-self:center;height:465px;margin-left:20px}.main-photo{margin:0;position:absolute;right:0;top:0;width:80%;padding:12px 12px 18px;background:#fff;transform:rotate(5deg);box-shadow:0 12px 35px #26384a18}.main-photo img{width:100%;height:320px;object-fit:cover}.main-photo figcaption,.small-photo figcaption{font:italic 16px var(--heading);text-align:center;padding:12px 0 0}.small-photo{position:absolute;left:-25px;bottom:-10px;width:42%;background:white;padding:9px 9px 16px;transform:rotate(-9deg);box-shadow:0 10px 30px #26384a25;margin:0}.small-photo img{width:100%;height:180px;object-fit:cover}.small-photo figcaption{font-size:14px}.round-label{background:var(--blue);width:133px;height:133px;display:flex;flex-direction:column;justify-content:center;text-align:center;border-radius:50%;position:absolute;right:-24px;bottom:2px;font-size:13px;line-height:1.8;transform:rotate(10deg);border:1px dashed #7aa9bc;outline:7px solid var(--blue)}.ribbon{background:var(--blue);display:flex;gap:30px;justify-content:center;padding:22px;font-size:11px;letter-spacing:2px}.projects{padding:72px 8%}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.section-heading>p{font-size:14px;color:#536070}h2{font:500 40px/1.2 var(--heading);letter-spacing:-.8px;margin:0 0 18px}.section-heading .eyebrow{margin-bottom:12px}.demo-label{font-size:12px;color:#647182;margin:0 0 26px}.cards{display:grid;grid-template-columns:1fr 1fr .83fr;gap:28px}article{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background:white}article>img{width:100%;height:255px;object-fit:cover}.card-body{padding:26px}.tag{font-size:11px;letter-spacing:1.2px;color:#9b3e62}h3{font:500 25px/1.25 var(--heading);margin:14px 0}article p{font-size:14px;line-height:1.7;color:#536070}.text-link{border:0;background:transparent;color:var(--ink);padding:15px 0 0;font-size:14px;text-align:left}.text-link span{margin-left:15px}.template-card{background:var(--blue);border:0;padding:34px;display:flex;flex-direction:column;justify-content:center}.template-card .eyebrow{font-size:11px}.template-type{font:500 62px/1 var(--heading);color:#367298;letter-spacing:-3px}.template-type em{color:var(--accent);font-size:48px}.template-card h3{font-size:30px}.about{margin:10px 8% 70px;padding:50px;background:var(--pink);display:grid;grid-template-columns:.75fr 1.2fr;gap:65px;align-items:center;border-radius:15px}.portrait{position:relative}.portrait img{width:100%;max-height:420px;object-fit:cover;border:10px solid white;transform:rotate(-4deg)}.portrait .handwritten{display:block;text-align:center;margin:20px 0 0}.about p:not(.eyebrow){font-size:15px;line-height:1.85}.signature{font:italic 23px var(--heading);color:var(--accent)}.videos{padding:15px 8% 75px;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.videos p{line-height:1.8;font-size:15px}.video-preview{position:relative;border-radius:14px;overflow:hidden;height:295px;background:#24374b}.video-preview img{width:100%;height:100%;object-fit:cover;opacity:.75}.video-preview button{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);border:0;border-radius:50%;background:white;color:var(--accent);width:70px;height:70px;font-size:24px}.video-preview span{position:absolute;bottom:0;left:0;right:0;background:#24374bcc;color:white;padding:15px;font-size:11px;letter-spacing:1.5px;text-align:center}footer{padding:30px 8%;background:var(--blue);display:flex;justify-content:space-between;align-items:center;gap:20px}footer p,footer a{font-size:13px}.prototype-note{text-align:center;font-size:12px;padding:16px;color:#647182}dialog{border:0;border-radius:18px;padding:45px;width:min(560px,90vw);color:var(--ink);box-shadow:0 20px 90px #0003}dialog::backdrop{background:#20334799}dialog h2{font-size:34px}dialog p,dialog li{line-height:1.8}.close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:30px;color:var(--ink)}
body[data-theme=diary]{--pink:#ffd5e6;--blue:#c9e9fb;--accent:#b52767;--ink:#244e81;--heading:'DM Sans',sans-serif}body[data-theme=diary] .hero{background-color:#f0f8ff;background-image:linear-gradient(#9cbdd32b 1px,transparent 1px),linear-gradient(90deg,#9cbdd32b 1px,transparent 1px);background-size:27px 27px}body[data-theme=diary] h1{font-weight:700;letter-spacing:-3px}body[data-theme=diary] h1 em{font-style:normal;background:#ffd5e6;box-shadow:9px 0 #ffd5e6,-5px 0 #ffd5e6}body[data-theme=diary] .hero-copy{padding-top:20px}body[data-theme=diary] .hero-art{order:-1;margin:0 30px 0 0}body[data-theme=diary] .main-photo{transform:rotate(-5deg)}body[data-theme=diary] .small-photo{left:auto;right:-30px;transform:rotate(9deg)}body[data-theme=diary] .round-label{left:-25px;right:auto}body[data-theme=diary] .primary{border-radius:6px;box-shadow:4px 4px 0 #e6a3c0}body[data-theme=diary] article{border:2px solid var(--ink);border-radius:0;box-shadow:6px 6px 0 var(--pink)}body[data-theme=diary] .about{border-radius:0;border:2px dashed #b44c78}body[data-theme=diary] h2,body[data-theme=diary] h3{font-weight:700}body[data-theme=diary] .ribbon{background:#ffd5e6}body[data-theme=magazine]{--pink:#fae5ef;--blue:#e4f2ff;--accent:#c04a7b;--ink:#164b82}body[data-theme=magazine] header{border-bottom:2px solid #164b82}body[data-theme=magazine] .hero{background:#e4f2ff;grid-template-columns:1fr 1.2fr;padding-top:45px;padding-bottom:45px;min-height:590px}body[data-theme=magazine] h1{font-size:clamp(48px,4.7vw,75px)}body[data-theme=magazine] .hero-art{height:470px;margin:0}body[data-theme=magazine] .main-photo{transform:none;width:100%;padding:0;background:transparent;box-shadow:none}body[data-theme=magazine] .main-photo img{height:425px;border-radius:160px 160px 0 0}body[data-theme=magazine] .small-photo,body[data-theme=magazine] .round-label,body[data-theme=magazine] .handwritten{display:none}body[data-theme=magazine] .ribbon{background:#164b82;color:white}body[data-theme=magazine] .primary{border-radius:0}body[data-theme=magazine] .cards{grid-template-columns:1.2fr 1fr .8fr}body[data-theme=magazine] article{border:0;border-radius:0}body[data-theme=magazine] .card-body{padding:20px 0}body[data-theme=magazine] .template-card{background:#fae5ef}body[data-theme=magazine] .about{border-radius:0;background:transparent;border-top:1px solid #a7bdd0;border-bottom:1px solid #a7bdd0;padding:50px 0;grid-template-columns:.7fr 1.3fr}body[data-theme=magazine] .portrait img{transform:none;border:0;border-radius:50%}body[data-theme=magazine] .video-preview{border-radius:0}
@media(min-width:1600px){.hero h1{font-size:76px}}@media(max-width:1050px){.chooser{flex-wrap:wrap;justify-content:center}.chooser>div:first-child,.chooser>p{display:none}header{padding:22px 5%}nav{gap:20px}.header-cta{display:none}.hero{padding:45px 5%;gap:10px}.hero h1{font-size:53px}.hero-art{height:420px}.main-photo img{height:290px}.small-photo{width:48%;left:0}.small-photo img{height:150px}.round-label{right:0;width:110px;height:110px}.projects{padding:55px 5%}.cards{gap:18px}.card-body,.template-card{padding:20px}article>img{height:220px}.about{margin:0 5% 55px;padding:30px;gap:30px}.videos{padding:10px 5% 55px;gap:30px}}@media(max-width:700px){.chooser{padding:10px}.choices{width:100%;gap:5px}.choices button{flex:1;padding:10px 5px;font-size:12px}header{flex-direction:column;gap:22px}.logo{width:180px}nav{font-size:14px;gap:24px}.hero,body[data-theme=magazine] .hero{display:flex;flex-direction:column;padding:35px 7% 50px;gap:22px}.hero h1,body[data-theme=magazine] h1{font-size:52px}.hero-art,body[data-theme=magazine] .hero-art{width:100%;height:410px;margin:0}.hero-copy{width:100%}.hero-art{max-width:430px}.hero .intro br{display:none}body[data-theme=diary] .hero-art{order:0;margin:0}.main-photo{right:15px;width:78%}.main-photo img{height:270px}.small-photo{left:0;bottom:0;width:43%}.round-label{right:5px;bottom:0}.ribbon{padding:18px;flex-wrap:wrap;gap:12px;font-size:10px}.ribbon span:nth-child(n+3){display:none}.section-heading{display:block}.section-heading>p{margin-top:0}h2{font-size:34px}.cards,body[data-theme=magazine] .cards{grid-template-columns:1fr}.cards{gap:25px}article>img{height:310px}.card-body{padding:25px}.template-card{padding:30px}.template-type{font-size:55px}.template-type br{display:none}.about,body[data-theme=magazine] .about{display:flex;flex-direction:column;padding:30px 25px;gap:30px}.portrait{max-width:310px}.videos{grid-template-columns:1fr;padding:10px 7% 45px}.video-preview{height:250px}footer{flex-direction:column;text-align:center}.prototype-note{line-height:1.6}.hero-art .round-label{font-size:12px}body[data-theme=magazine] .main-photo{right:0}body[data-theme=magazine] .main-photo img{height:360px}body[data-theme=magazine] .hero-art{height:410px}dialog{padding:35px 25px}body[data-theme=diary] .small-photo{right:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Compact modern footer */
footer{width:min(920px,calc(100% - 48px));margin:42px auto 12px;padding:18px 28px;background:linear-gradient(105deg,#e4f3ff,#d5ecfb);border:1px solid #b7d5e8;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:24px;box-shadow:0 8px 24px #244e8112}
footer .logo{width:152px}footer p,footer a{font-size:13px;margin:0;color:#31536f}footer a{font-weight:600;border-bottom:1px solid #8ab3cd;padding-bottom:2px}footer a:hover{color:var(--accent);border-color:var(--accent)}.footer-promo{display:inline-flex;flex-wrap:wrap;align-items:center;gap:5px 8px;padding-left:18px;border-left:1px solid #b7d5e8;color:#31536f;font:inherit;font-size:13px;line-height:1.5;white-space:nowrap}.footer-promo__link{--footer-promo-accent:var(--accent,currentColor);display:inline-flex;align-items:center;padding:.22em .6em;color:inherit;font:inherit;font-weight:600;text-decoration:none;border:1px solid currentColor;border-radius:999px;opacity:.9;transition:color 180ms ease,background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease,transform 180ms ease,opacity 180ms ease}.footer-promo__link:hover,.footer-promo__link:focus-visible{color:var(--ink);border-color:var(--footer-promo-accent);background-color:var(--pink);box-shadow:0 0 0 .2em var(--pink);transform:translateY(-1px);opacity:1}.footer-promo__link:focus-visible{outline:2px solid var(--footer-promo-accent);outline-offset:3px}@supports (background:color-mix(in srgb,red,transparent)){.footer-promo__link:hover,.footer-promo__link:focus-visible{background-color:color-mix(in srgb,var(--footer-promo-accent) 14%,transparent);box-shadow:0 0 0 .2em color-mix(in srgb,var(--footer-promo-accent) 10%,transparent)}}.prototype-note{padding:10px 16px 18px}
@media(max-width:700px){footer{width:calc(100% - 28px);margin:28px auto 10px;padding:16px 18px;gap:12px}footer .logo{width:132px}footer p,footer a,.footer-promo{font-size:11px}.footer-promo{padding-left:0;border-left:0;white-space:normal;justify-content:center}}@media(prefers-reduced-motion:reduce){.footer-promo__link{transition:none}}

