:root{--ink:#482038;--paper:#faf9f6;--lav:#e4dff5;--coral:#f36b4f;--yellow:#f7e996}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}button,input{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--coral);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3,.brand{font-family:'Bricolage Grotesque',sans-serif}h1,h2{letter-spacing:-.065em;line-height:.93;font-weight:800}h2 span,h1 span{color:var(--coral)}.header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;background:var(--paper)}.brand{font-weight:800;font-size:38px;letter-spacing:-.08em;display:inline-flex;align-items:center;line-height:1}.brand-dot{color:var(--coral)}.brand-mark{width:22px;height:22px;margin-right:9px;border:3px solid currentColor;position:relative}.brand-mark:after{content:'';position:absolute;inset:4px;border:2px solid currentColor}.header nav{display:flex;align-items:center;gap:38px;font-size:14px;font-weight:600}.header nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.button{border:0;border-radius:3px;padding:17px 21px;font-weight:700;font-size:14px;display:inline-flex;align-items:center;justify-content:space-between;gap:42px;min-height:54px}.button span{font-size:20px;line-height:1}.button-dark{background:var(--ink);color:white}.button-coral{background:var(--coral);color:var(--ink)}.button:hover{filter:brightness(.93)}.menu-toggle{display:none}.hero{background:var(--lav);min-height:690px;display:grid;grid-template-columns:48% 52%;position:relative;padding:76px 6% 90px;overflow:hidden}.hero-copy{z-index:2}.hero-kicker{font-size:13px;font-weight:700;margin-bottom:35px;display:flex;align-items:center;gap:9px}.hero-kicker span{width:9px;height:9px;background:var(--coral);border-radius:50%}.hero h1{font-size:clamp(65px,7.5vw,120px)}.hero-intro{font-size:18px;line-height:1.5;max-width:330px;margin:30px 0 26px}.hero-footnote{font-size:12px;margin-top:16px}.hero-visual{position:relative;min-height:500px}.portrait{position:absolute;overflow:hidden;background:#c5b6b5}.portrait img,.concept-image img{width:100%;height:100%;object-fit:cover;display:block}.portrait-one{width:47%;height:80%;left:4%;top:1%;z-index:2}.portrait-two{width:40%;height:53%;right:6%;top:0}.portrait-three{width:39%;height:46%;right:12%;bottom:0;z-index:3}.portrait-one img{object-position:center 35%}.portrait-two img{object-position:center 35%}.portrait-three img{object-position:center 30%}.corner{position:absolute;width:30px;height:30px;border-color:#fff;border-style:solid}.corner.top{left:12px;top:12px;border-width:2px 0 0 2px}.corner.bottom{right:12px;bottom:12px;border-width:0 2px 2px 0}.photo-tag{position:absolute;bottom:0;left:0;background:var(--yellow);padding:9px 12px;font-size:11px;font-weight:700}.photo-tag b{margin-left:15px;font-size:17px}.visual-note{position:absolute;z-index:4;left:39%;bottom:5%;background:var(--paper);padding:17px 42px 17px 17px;font-size:13px;line-height:1.3;transform:rotate(-5deg)}.visual-note span{position:absolute;right:12px;top:10px;color:var(--coral);font-size:22px}.visual-number{position:absolute;right:0;bottom:1%;font-size:10px;font-weight:700;writing-mode:vertical-rl;letter-spacing:.08em}.hero-bottom{position:absolute;bottom:25px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600}.hero-bottom div{font-size:12px}.hero-bottom i{font-style:normal;color:var(--coral);padding:0 8px}.hero-bottom a{font-size:24px}.section-pad{padding:110px 6%}.section-label{font-size:13px;font-weight:700;display:flex;gap:25px;align-items:center}.section-label span{border:1px solid currentColor;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:10px}.concept-heading{display:grid;grid-template-columns:1.15fr .55fr;gap:10%;align-items:end;margin:60px 0 70px}.concept h2,.faq h2,.steps h2,.join h2{font-size:clamp(55px,6.5vw,94px)}.concept-heading>p{font-size:19px;line-height:1.5;max-width:400px}.concept-grid{display:grid;grid-template-columns:1.1fr .7fr;gap:12%;align-items:center}.concept-image{height:460px;position:relative;background:var(--lav)}.concept-image span{position:absolute;left:20px;bottom:20px;background:var(--paper);padding:11px 14px;font-size:12px;font-weight:700}.concept-copy{max-width:400px}.asterisk{font-size:45px;color:var(--coral)}.concept-copy h3{font-size:33px;line-height:1.1;letter-spacing:-.04em;margin:24px 0}.concept-copy p,.steps-intro p,.step-grid p,.faq>div>p{font-size:16px;line-height:1.65}.text-link{display:inline-flex;gap:30px;font-size:14px;font-weight:700;margin-top:32px;border-bottom:1px solid;padding-bottom:8px}.steps{background:var(--ink);color:var(--paper)}.steps-intro{display:flex;align-items:end;justify-content:space-between;gap:50px;margin:60px 0 70px}.steps-intro p{max-width:330px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.step-grid article{border-top:1px solid #9a7e90;padding-top:20px;min-height:260px}.step-num{font-size:12px}.step-symbol{font-size:55px;line-height:1;color:var(--coral);margin:38px 0 25px}.frame-symbol{color:var(--yellow)}.step-grid h3{font-size:25px;letter-spacing:-.04em;margin-bottom:13px}.step-grid p{color:#e7dce4;max-width:310px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:12%}.faq h2{margin:60px 0 25px}.faq-list{padding-top:35px}.faq details{border-bottom:1px solid #c7b7c1}.faq details:first-child{border-top:1px solid #c7b7c1}.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;font-weight:700}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:25px;font-weight:400}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{max-width:500px;line-height:1.6;padding:0 30px 24px 0}.join{background:var(--lav);display:grid;grid-template-columns:110px 1fr auto;align-items:end;gap:25px}.join-star{font-size:70px;color:var(--coral);align-self:start;line-height:1}.join h2{margin:25px 0 35px}.join-side{font-size:14px;line-height:1.5;padding-bottom:5px}footer{padding:38px 6%;display:flex;align-items:center;gap:40px}footer p{font-size:13px}footer>div{margin-left:auto;display:flex;gap:30px;align-items:center;font-size:12px}footer button{background:none;border:0;color:inherit;text-decoration:underline}.menu-toggle{background:none;border:0;color:var(--ink);font-weight:700}dialog{border:0;padding:0;background:var(--paper);color:var(--ink);width:min(620px,calc(100% - 30px));max-height:calc(100% - 30px);box-shadow:0 15px 80px #29101e55}dialog::backdrop{background:#261221b8}.dialog-shell{padding:32px 45px 42px}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}.dialog-top .brand{font-size:29px}.dialog-top .brand-mark{width:18px;height:18px}.close-dialog,.close-privacy{background:none;border:0;color:var(--ink);font-size:34px;line-height:1}.progress{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;margin-bottom:25px}.progress div{display:flex;gap:5px}.progress i{width:35px;height:3px;background:#d8cad2}.progress i.active{background:var(--coral)}dialog h2{font-size:clamp(44px,6vw,62px)}.dialog-lead{margin:15px 0 25px}.form-step label:not(.check):not(.choice):not(.chips label){display:block;font-weight:700;font-size:13px;margin:17px 0}.form-step input:not([type=checkbox]):not([type=radio]){display:block;width:100%;border:1px solid #bdaab5;background:white;color:var(--ink);padding:13px;margin-top:8px;border-radius:0}.form-step small{font-weight:400;color:#765d6b}.check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.4;margin:20px 0}.check input{accent-color:var(--ink);width:18px;height:18px;flex:none;margin:0}fieldset{border:0;padding:0;margin:0 0 25px}legend{font-weight:700;font-size:14px;margin-bottom:14px}legend small{display:block;margin-top:5px}.choice{display:block;margin:10px 0}.choice input{accent-color:var(--ink);margin-right:9px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips label input{position:absolute;opacity:0}.chips span{display:block;border:1px solid #ac98a5;padding:10px 13px;font-size:13px;cursor:pointer}.chips input:checked+span{background:var(--ink);color:white}.chips input:focus-visible+span{outline:3px solid var(--coral);outline-offset:2px}.form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:25px}.form-actions .next{margin-left:auto}.back,.delete-data{border:0;background:none;color:var(--ink);text-decoration:underline;font-weight:700}.form-error{color:#a52e1d;font-weight:700;font-size:13px;margin-top:15px}.privacy-note{font-size:12px;line-height:1.5;color:#765d6b}.review{background:var(--lav);padding:15px;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.review strong{display:block}#photo-preview{width:80px;height:80px;object-fit:cover;margin-bottom:10px}.success-star{display:block;font-size:50px;color:var(--coral);margin:25px 0}#success p{line-height:1.6;margin:20px 0;max-width:430px}#success .delete-data{display:block;margin-top:25px}.privacy-shell{position:relative}.close-privacy{position:absolute;right:30px;top:25px}.privacy-shell h2{margin:35px 0 25px}.privacy-shell p{line-height:1.6;margin-bottom:20px}.privacy-shell .delete-data{color:white;text-decoration:none}.delete-message{font-size:13px;font-weight:700}[hidden]{display:none!important}@media(max-width:800px){.header{height:75px;padding:0 5%}.brand{font-size:33px}.menu-toggle{display:block}.header nav{display:none;position:absolute;top:75px;left:0;right:0;z-index:10;background:var(--paper);padding:20px 5% 28px;align-items:stretch;gap:0;flex-direction:column}.header nav.open{display:flex}.header nav a{padding:14px 0}.header nav .button{margin-top:12px}.hero{grid-template-columns:1fr;padding:55px 5% 90px}.hero h1{font-size:clamp(61px,12vw,92px)}.hero-visual{min-height:430px;margin-top:45px}.hero-bottom{left:5%;right:5%}.hero-bottom>span{display:none}.section-pad{padding:75px 5%}.concept-heading{grid-template-columns:1fr;gap:25px;margin:45px 0}.concept-grid{grid-template-columns:1fr;gap:40px}.concept-image{height:390px}.steps-intro{display:block;margin:45px 0}.steps-intro p{margin-top:25px}.step-grid{grid-template-columns:1fr;gap:28px}.step-grid article{min-height:0}.step-symbol{margin:20px 0}.faq{grid-template-columns:1fr;gap:25px}.faq h2{margin:45px 0 20px}.join{grid-template-columns:1fr}.join-star{font-size:55px}.join-side{margin-top:20px}footer{padding:35px 5%;flex-wrap:wrap;gap:15px}footer p{width:100%}footer>div{margin:10px 0 0;width:100%;justify-content:space-between}.dialog-shell{padding:25px}.hero-bottom div{font-size:10px}.hero-bottom i{padding:0 3px}}@media(max-width:420px){.hero h1{font-size:55px}.hero-visual{min-height:340px}.portrait-one{width:49%}.visual-note{left:34%;bottom:1%}.concept-image{height:300px}.concept h2,.faq h2,.steps h2,.join h2{font-size:54px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.brand{font-size:clamp(23px,2.8vw,34px);letter-spacing:-.06em}.dialog-top .brand{font-size:25px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}.form-step select,.form-step textarea,.filters input,.filters select,#update-form select,#update-form textarea{display:block;width:100%;border:1px solid #bdaab5;background:white;color:var(--ink);padding:13px;margin-top:8px;font:inherit}.form-step fieldset{margin:25px 0}.form-step fieldset p{font-size:14px;line-height:1.55}.hint{font-size:13px;line-height:1.5;color:#765061}.photo-list{display:grid;gap:10px}.photo-row{display:grid;grid-template-columns:75px 1fr auto;gap:10px;align-items:center;border:1px solid #cbbbc4;padding:10px}.photo-row img{width:75px;height:75px;object-fit:cover;grid-row:span 2}.photo-row label{overflow-wrap:anywhere;margin:0!important}.photo-row select{padding:8px}.photo-status{font-size:12px}.inline-link{border:0;background:none;color:inherit;padding:0;text-decoration:underline;cursor:pointer}.honeypot{position:absolute;left:-10000px}.form-actions button:disabled{opacity:.5;cursor:not-allowed}#upload-progress{font-size:14px;line-height:1.5;margin-top:15px}.privacy-shell a{text-decoration:underline}select:focus-visible,textarea:focus-visible{outline:3px solid var(--coral);outline-offset:3px}@media(max-width:500px){.field-grid{grid-template-columns:1fr}.photo-row{grid-template-columns:60px 1fr}.photo-row img{width:60px;height:60px}.brand{font-size:25px}}
