
:root{--green:#005a5a;--ink:#233f35;--muted:#526356;--paper:#fff8e9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif;background:#c88f4f url('images/welcome/workbench.webp') center top/100% auto repeat-y}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:4px}a,summary{touch-action:manipulation}[hidden]{display:none!important}.skip{position:absolute;left:15px;top:-100px;z-index:10;background:var(--paper);padding:12px}.skip:focus{top:10px}.welcome-header{max-width:1600px;margin:auto;padding:16px 4%;display:flex;justify-content:space-between;align-items:center;gap:12px}.studio-brand{text-decoration:none;display:flex;align-items:center;gap:12px;background:#fff8e9f5;padding:8px 14px;border-radius:7px;min-width:0}.welcome-logo{display:block;width:88px;height:auto}.studio-brand-name{display:flex;flex-direction:column;font-size:15px;line-height:1.4}.studio-brand-name b{font-size:17px;letter-spacing:2px;color:var(--green)}.access-menu{position:relative;align-self:center;z-index:5}.access-menu summary{cursor:pointer;list-style:none;background:#fff8e9f5;padding:10px 16px;border-radius:7px;min-height:44px;font-size:14px}.access-menu summary::-webkit-details-marker{display:none}.access-menu summary span{margin-left:10px}.access-menu nav{position:absolute;top:calc(100% + 8px);right:0;width:220px;display:flex;flex-direction:column;padding:8px;background:#fffaf1;border:1px solid #d8ddcd;border-radius:8px;box-shadow:0 8px 24px #233f3526}.access-menu nav a{padding:12px;font-size:15px;text-decoration:none;min-height:46px}.access-menu nav a:hover{background:#edf3e7;border-radius:4px}.access-menu nav .internal-entry{font-size:13px;color:#526356;border-top:1px solid #dedfce}main{max-width:1600px;margin:auto}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.5px;margin:0 0 14px}.invitation{width:min(760px,85%);margin:10px auto 0;background:url('images/welcome/invitation.webp') center/100% 100% no-repeat;filter:drop-shadow(0 8px 10px #39261920)}.invitation-copy{padding:55px 76px 48px;text-align:center}.invitation h1{font:clamp(32px,3.4vw,48px)/1.12 Georgia,serif;letter-spacing:-.6px;margin:0 auto 18px;max-width:550px}.invitation p:not(.eyebrow):not(.reassurance){font-size:17px;line-height:1.6;margin:0 auto 24px;max-width:510px}.start-button{display:flex;justify-content:center;align-items:center;gap:16px;background:var(--green);color:#fff9e9;padding:15px 18px;border-radius:7px;text-decoration:none;min-height:54px;font:21px/1.4 Georgia,serif;box-shadow:0 3px 8px #15392f16}.start-button:hover{background:#064c48}.start-button span{font-family:Arial,sans-serif}.invitation .reassurance{font-size:12px;color:#435a4c;margin:12px 0 0}.resume-link{display:block;font-size:14px;margin:8px auto 0;padding:8px;min-height:44px;text-underline-offset:4px}.welcome-motto{width:fit-content;max-width:calc(100% - 32px);margin:18px auto 26px;padding:10px 20px;text-align:center;background:#fff8e9f2;border-radius:6px;font:19px/1.5 Georgia,serif}.welcome-motto em{color:var(--green)}.welcome-journey{margin:auto;max-width:1480px;padding:0 30px 20px;text-align:center}.welcome-journey>h2{font:26px/1.35 Georgia,serif;margin:0 auto 10px;padding:10px 18px;background:#fff8e9f2;border-radius:7px;width:fit-content}.journey-art{position:relative;aspect-ratio:5.5;overflow:hidden;margin:0 -10px}.journey-art img{display:block;position:absolute;width:100%;height:auto;left:0;top:50%;transform:translateY(-50%);filter:drop-shadow(0 7px 5px #3e281f26)}.journey-stations{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0;margin:0}.journey-stations li{background:#fff8ecf2;padding:14px;border-radius:7px}.journey-stations b{font:22px/1.3 Georgia,serif}.journey-stations p{font-size:14px;margin:6px 0 0;line-height:1.5}.mobile-scene{display:none}.journey-note{max-width:900px;margin:14px auto 0;font-size:12px;background:#fff8e9f5;padding:10px 14px;border-radius:5px;color:#4b5c50}.welcome-trust{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:1000px;margin:14px auto 32px;padding:22px 28px;background:#fff8edf5;border-radius:8px}.welcome-trust p{margin:0;font-size:14px}.welcome-trust b{display:block;color:var(--green);margin-bottom:6px}footer{max-width:1480px;margin:auto;padding:18px 25px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#fff8e9f5;font-size:12px}.no-script{background:var(--paper);padding:15px;text-align:center}
@media(max-width:900px){body{background-size:auto 1150px}.welcome-header{padding:12px 18px}.invitation{width:min(720px,94%)}.welcome-trust{margin:10px 18px 26px}}
@media(max-width:600px){.welcome-header{padding:10px 12px;gap:8px}.studio-brand{padding:6px 8px;gap:8px}.welcome-logo{width:65px}.studio-brand-name{font-size:12px}.studio-brand-name b{font-size:14px;letter-spacing:1.2px}.access-menu summary{font-size:13px;padding:10px 12px}.access-menu summary span{margin-left:6px}.invitation{width:calc(100% - 8px);margin:4px auto 0}.invitation-copy{padding:35px 28px 32px}.eyebrow{font-size:9px;letter-spacing:1.1px;margin-bottom:12px}.invitation h1{font-size:32px;line-height:1.13;max-width:330px;margin-bottom:16px}.invitation p:not(.eyebrow):not(.reassurance){font-size:16px;line-height:1.55;margin-bottom:20px}.start-button{font-size:19px;padding:14px 10px;gap:10px;min-height:54px}.invitation .reassurance{font-size:12px;margin-top:12px}.welcome-motto{font-size:16px;margin:16px auto 22px;padding:10px 16px}.welcome-journey{padding:0 12px 12px}.welcome-journey>h2{font-size:23px;padding:12px 16px;margin-bottom:12px}.journey-art{display:none}.journey-stations{grid-template-columns:1fr;gap:12px;text-align:left;counter-reset:station}.journey-stations li{padding:0;overflow:hidden;counter-increment:station;border-radius:9px;background:#fff8edf7}.mobile-scene{display:block;height:125px;background-image:url('images/welcome/journey.webp');background-repeat:no-repeat;background-size:400% auto;background-position-y:center}.scene-1{background-position-x:0}.scene-2{background-position-x:33.333%}.scene-3{background-position-x:66.667%}.scene-4{background-position-x:100%}.journey-stations li>div{padding:12px 16px 14px 52px;position:relative;min-height:95px}.journey-stations li>div::before{content:counter(station);position:absolute;left:16px;top:14px;background:var(--green);color:white;border-radius:50%;width:25px;height:25px;text-align:center;font-size:13px;line-height:25px}.journey-stations b{font-size:22px}.journey-stations p{font-size:14px;margin-top:4px}.journey-note{font-size:12px}.welcome-trust{grid-template-columns:1fr;gap:18px;margin:10px 12px 22px;padding:20px}footer{margin:0 12px 12px;padding:18px;font-size:12px;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Product recognition in the first viewport, with the original atelier artwork retained. */
.invitation-copy{padding-top:50px;padding-bottom:48px}.invitation h1{font-size:clamp(30px,3.1vw,43px);margin-bottom:14px}.invitation h1 em{color:var(--green);font-weight:400}.welcome-example{margin:0 auto 15px;max-width:300px}.welcome-example img{display:block;width:100%;height:110px;object-fit:contain}.welcome-example figcaption{font-size:10px;color:#526356;line-height:1.4;margin-top:5px}.invitation p:not(.eyebrow):not(.reassurance){font-size:16px;line-height:1.5;margin-bottom:18px}.invitation p strong{font-weight:600}@media(max-width:600px){.invitation-copy{padding:40px 28px 45px}.invitation h1{font-size:29px;line-height:1.12;margin-bottom:12px}.welcome-example{margin-bottom:12px}.welcome-example img{height:92px}.welcome-example figcaption{font-size:10px}.invitation p:not(.eyebrow):not(.reassurance){font-size:15px;line-height:1.45;margin-bottom:16px}.invitation .eyebrow{font-size:9px;margin-bottom:10px}}

/* Keep all introductory text clear of the torn paper edge. */
.invitation-copy{padding-top:76px;padding-bottom:60px}
@media(max-width:600px){.invitation-copy{padding:64px 36px 56px}}

/* Make the example recognisable at desktop size and use the mobile paper width. */
.welcome-example{max-width:460px;margin:0 auto 18px}
.welcome-example img{height:auto;max-height:260px;object-fit:contain}
@media(max-width:600px){.welcome-example{max-width:100%;margin-bottom:16px}.welcome-example img{height:auto;max-height:180px}}
