@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&family=Caveat:wght@400;500;600&display=swap');
:root{--ink:#214f59;--sky:#bce5ed;--cream:#fffdf6;--gold:#b77522;--mx:0;--my:0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;height:auto;display:block}.wrap{width:min(1260px,calc(100% - 112px));margin:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;z-index:10}.brand{display:flex;flex-direction:column;align-items:center;line-height:1.05}.brand-name{font-size:14px;display:flex;flex-direction:column;align-items:center}.brand b{font-size:34px;letter-spacing:-1.8px;font-weight:700}.brand b span{color:#d19b25;font-size:26px;margin-left:2px}.brand small{font-size:9px;letter-spacing:2px;margin-top:8px}.header nav{display:flex;gap:34px;font-size:14px}.header nav a:hover,.text-link:hover{color:var(--gold)}.button{border:0;border-radius:99px;background:var(--ink);color:white;display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:18px 26px;font-size:14px;font-weight:600;box-shadow:0 6px 12px #214f5910;transition:transform .25s,background .25s}.button:hover{background:#326975;transform:translateY(-3px)}.button span{font-size:21px}.button.small{padding:12px 23px}.hero{background:radial-gradient(ellipse at 80% 40%,#def5f6 0%,transparent 52%),linear-gradient(120deg,#ccebf0,#a7d7e4);min-height:700px;position:relative;border-radius:28px 28px 0 0;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.05fr 1fr;gap:24px;min-height:610px;align-items:center}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:700;margin:0 0 27px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'DM Serif Display',Georgia,serif;font-weight:400}h1{font-size:clamp(58px,5.6vw,85px);line-height:1.04;letter-spacing:-2.6px;margin-bottom:27px}h1 em,h2 em{font-weight:400;color:var(--gold)}.intro{font-size:15px;line-height:1.9;max-width:485px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:33px}.text-link{font-size:13px;border-bottom:1px solid #214f5980;padding-bottom:7px;display:inline-flex;gap:13px}.hero-art{height:490px;position:relative;perspective:1000px}.orbit{position:absolute;inset:16px 0 4px 0;border:1px solid #fff9;border-radius:50%;transform:rotate(-18deg)}.polaroid{margin:0;background:white;padding:12px 12px 15px;box-shadow:0 18px 40px #214f5920}.hero-photo{width:91%;position:absolute;top:65px;left:3%;transform:rotate(-7deg);border-radius:4px}.hero-photo img{width:100%;height:auto}.polaroid figcaption{font-family:'Caveat',cursive;font-size:27px;text-align:center;margin-top:10px}.mascot-scene{position:absolute;width:255px;height:330px;right:-55px;bottom:-13px;filter:drop-shadow(0 16px 10px #41687526)}.mascot{width:100%;height:100%;transform:rotateY(calc(var(--mx)*-11deg)) rotateX(calc(var(--my)*6deg));transition:transform .15s ease-out;position:relative;overflow:hidden}.mascot img{max-width:none;position:absolute;width:580px;left:-165px;top:-18px}.handnote{position:absolute;bottom:4px;left:20px;font-family:'Caveat',cursive;font-size:28px;transform:rotate(-5deg)}.scroll-note{position:relative;display:flex;align-items:center;justify-content:center;gap:22px;font-size:10px;letter-spacing:2px;padding:20px}.scroll-note span{font-size:25px}.skip{position:fixed;left:20px;top:-100px;padding:16px;background:white;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid #b77522;outline-offset:5px}
@media(min-width:1500px){.hero{min-height:780px}.hero-inner{min-height:680px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.header nav{gap:20px}.hero-inner{gap:0}.hero-art{height:400px}.mascot-scene{right:-45px;bottom:-35px;transform:scale(.8)}.hero-photo{top:65px}.handnote{font-size:24px;bottom:0}h1{font-size:61px}.hero-actions{gap:16px}.intro{font-size:15px}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header{height:90px;gap:12px}.header nav{display:none}.brand b{font-size:30px}.brand small{font-size:8px}.button.small{font-size:12px;padding:11px 16px;gap:12px}.hero{border-radius:20px 20px 0 0;min-height:0}.hero-inner{grid-template-columns:1fr;padding-top:48px}.hero-copy{position:relative;z-index:2}.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:23px}h1{font-size:clamp(47px,12.8vw,70px);letter-spacing:-1.8px;line-height:1.08;margin-bottom:23px}.intro{font-size:14px;line-height:1.8}.desktop{display:none}.hero-actions{gap:20px;margin-top:26px}.button{font-size:13px;padding:16px 22px}.hero-art{height:360px;margin-top:10px}.hero-photo{top:56px;width:88%;left:2%}.polaroid figcaption{font-size:23px}.mascot-scene{transform:scale(.61);transform-origin:bottom right;right:-22px;bottom:-6px}.handnote{font-size:23px;bottom:17px;left:10px}.orbit{inset:25px 0}.scroll-note{font-size:8px;gap:13px;padding:22px 10px 30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.daisy{position:absolute;pointer-events:none;z-index:3;transform:translate(calc(var(--mx)*-20px),calc(var(--my)*-16px)) rotate(calc(var(--mx)*14deg));transition:transform .35s ease-out}.daisy img{width:100%;height:100%;object-fit:contain;animation:flower-drift 8s ease-in-out infinite alternate}.d1{width:210px;left:-128px;top:135px;filter:blur(1px)}.d2{width:250px;right:-130px;top:-100px;filter:blur(2px)}.d3{width:250px;right:-110px;bottom:-100px}.section{padding-top:115px;padding-bottom:115px}h2{font-size:clamp(42px,4.2vw,64px);line-height:1.1;letter-spacing:-1.5px;margin-bottom:25px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:48px;gap:30px}.section-heading h2{margin:0}.section-heading>p{font-size:15px;line-height:1.8;padding-bottom:8px}.gallery{display:grid;grid-template-columns:1fr .85fr 1fr;gap:32px;align-items:start}.memory{margin:0;transition:transform .4s}.memory img{width:100%;height:auto;border-radius:3px}.memory figcaption{font-family:'Caveat',cursive;font-size:25px;text-align:center;padding:15px 4px 0}.memory:hover{transform:translateY(-8px) rotate(1deg)}.m1{transform:rotate(-2deg)}.m2{grid-column:2;grid-row:1 / span 2;transform:rotate(2deg);padding:10px 10px 20px;background:white;box-shadow:0 8px 25px #214f5912;margin-top:35px}.m3{transform:rotate(2deg)}.m4{grid-column:1;grid-row:2}.m5{grid-column:2;grid-row:3 / span 2;margin-top:-70px;transform:rotate(-2deg);padding:10px 10px 20px;background:white;box-shadow:0 8px 25px #214f5912}.m6{grid-column:3;grid-row:2;transform:rotate(-2deg)}.gallery{grid-template-rows:auto auto 95px}.m5{display:none}.portfolio-end{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:5px}.handwriting{font:32px 'Caveat',cursive;color:var(--gold)}.story{background:#e9f2e8;position:relative}.story-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.story-art{position:relative;margin-top:30px}.story-art .polaroid{transform:rotate(-5deg);padding:16px 16px 18px}.story-art .polaroid img{width:100%;height:auto}.story-daisy{width:160px;top:-65px;left:-60px}.story-note{display:block;text-align:center;line-height:1.1;margin-top:45px;transform:rotate(-5deg)}.story-copy p:not(.eyebrow){font-size:15px;line-height:1.9;margin-bottom:20px}.story-copy h2{font-size:52px}.signature{display:block;font:32px 'Caveat',cursive;color:var(--gold);margin-top:25px}.keepsakes{display:grid;grid-template-columns:1fr .75fr;gap:150px;align-items:center}.keepsake-copy>p:not(.eyebrow){max-width:460px;font-size:15px;line-height:1.9}.keepsake-list{margin:35px 0}.keepsake-list>div{padding-left:45px;position:relative;margin:24px 0}.keepsake-list span{position:absolute;left:0;top:0;color:var(--gold);font:22px 'DM Serif Display',serif}.keepsake-list h3{font-size:16px;margin-bottom:8px;font-weight:600}.keepsake-list p{font-size:14px;line-height:1.8;max-width:420px}.keepsake-art{position:relative}.keepsake-art .polaroid{transform:rotate(6deg)}.keepsake-art .polaroid img{width:100%;height:auto}.keepsake-flower{position:absolute;width:190px;left:-110px;bottom:-35px;transform:rotate(-30deg)}.contact{text-align:center;background:radial-gradient(ellipse at top,#ddf1f2,#acd9e5);position:relative;overflow:hidden}.contact .wrap{position:relative;z-index:4}.contact h2{font-size:72px}.contact p:not(.eyebrow){font-size:15px;line-height:1.9}.contact .button{margin-top:17px}.instagram{display:block;font-size:13px;margin-top:27px}.contact-flower{width:450px;left:-230px;top:30px;filter:blur(1.5px)}.footer{display:flex;justify-content:space-between;align-items:center;padding-top:44px;padding-bottom:44px;gap:25px}.footer p{margin:0;font-size:13px}.footer>a:last-child{font-size:13px}.hero-copy{z-index:4}.hero-art{z-index:4}.gallery .memory img{height:auto;aspect-ratio:auto}.gallery{grid-template-rows:auto auto}.portfolio-end{margin-top:50px}@keyframes flower-drift{from{transform:rotate(-6deg) translateY(0)}to{transform:rotate(7deg) translateY(12px)}}
@media(max-width:1000px){.story-layout{gap:50px}.story-copy h2{font-size:44px}.keepsakes{gap:70px}.gallery{gap:20px}.memory figcaption{font-size:22px}.section{padding-top:85px;padding-bottom:85px}.contact h2{font-size:60px}}@media(max-width:700px){.d1{width:150px;left:-120px;top:230px}.d2{width:150px;right:-110px;top:20px}.d3{width:180px;right:-110px;bottom:-65px}.section{padding-top:68px;padding-bottom:68px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin:22px 0 0;font-size:14px}.section-heading>p br{display:none}h2{font-size:43px}.gallery{grid-template-columns:1fr 1fr;gap:30px 18px;grid-template-rows:auto;align-items:center}.memory{grid-column:auto;grid-row:auto!important;margin:0}.m2{padding:7px 7px 14px}.m3{grid-column:1 / span 2;width:86%;margin:auto}.m4{grid-column:2;grid-row:3!important}.m5{display:block;grid-column:1;grid-row:3!important;margin:0;padding:7px 7px 14px}.m6{grid-column:1 / span 2;width:85%;margin:10px auto 0}.memory figcaption{font-size:21px;line-height:1.1;padding-top:11px}.portfolio-end{display:flex;flex-direction:column;gap:22px;margin-top:40px}.handwriting{font-size:27px}.story-layout{display:flex;flex-direction:column-reverse;gap:20px}.story-copy h2{font-size:42px}.story-copy p:not(.eyebrow){font-size:14px}.signature{font-size:29px}.story-art{width:90%;margin-top:25px}.story-daisy{width:115px;left:-35px;top:-40px}.story-note{margin-top:30px}.keepsakes{display:flex;flex-direction:column;gap:40px}.keepsake-art{width:70%;max-width:300px}.keepsake-flower{width:150px;left:-65px}.contact h2{font-size:50px}.contact p:not(.eyebrow){font-size:14px}.contact-flower{width:250px;left:-195px;top:100px}.footer{flex-wrap:wrap;justify-content:center;text-align:center;gap:26px;padding-top:34px;padding-bottom:34px}.footer .brand{width:100%}.footer p{font-size:12px}.footer>a:last-child{font-size:12px}}@media(prefers-reduced-motion:reduce){.daisy,.mascot{transform:none!important}.daisy img{animation:none!important}}
.mascot{overflow:visible}.mascot img{width:100%;height:100%;object-fit:contain;left:0;top:0}.story-art{max-width:420px;margin-left:auto;margin-right:auto}.keepsake-art .polaroid{padding:0;background:none;box-shadow:0 20px 45px #214f5920;border-radius:8px;overflow:hidden;transform:rotate(3deg)}.keepsake-art .polaroid figcaption{display:none}.keepsake-art .polaroid img{border-radius:8px}.story-copy p:not(.eyebrow),.keepsake-copy>p:not(.eyebrow),.intro{font-size:16px;line-height:1.85}
.mascot-scene{right:-25px;bottom:-15px;width:205px;height:310px}.mascot img{position:relative;width:100%;height:100%;object-fit:contain;left:auto;top:auto}.hero-art{padding-right:35px}@media(max-width:1000px){.mascot-scene{right:-24px;bottom:-12px;transform:none;width:155px;height:240px}}@media(max-width:700px){.mascot-scene{right:-10px;bottom:-2px;width:135px;height:202px;transform:none}.story-art{max-width:330px}.keepsake-art{width:78%;max-width:340px}}

/* Original supplied logo: display the complete mark, trimming only surrounding empty space. */
.header{height:182px}.brand{flex-shrink:0}.official-logo{display:block;position:relative;width:120px;height:159px;overflow:hidden;border-radius:5px}.official-logo img{position:absolute;max-width:none;width:135%;height:auto;left:-17.5%;top:-40.57%}.hero-photo figcaption{max-width:calc(100% - 76px);font-size:clamp(20px,2vw,27px);line-height:1.2;margin:12px auto 0 0}.story-note{font-size:29px;line-height:1.3;margin-top:42px;padding:0 5px}.footer{flex-wrap:wrap}.footer .official-logo{width:105px;height:139px}.company-details{flex:0 0 100%;display:flex;justify-content:center;flex-wrap:wrap;gap:8px 30px;border-top:1px solid #214f5925;padding-top:24px;margin-top:2px}.footer .company-details p{font-size:14px;line-height:1.6}.company-details span{white-space:nowrap}
@media(max-width:700px){.header{height:158px}.official-logo{width:102px;height:135px}.hero-photo figcaption{font-size:21px;max-width:calc(100% - 62px)}.story-note{font-size:27px}.company-details{flex-direction:column;gap:5px}.footer .company-details p{font-size:13px}.footer .brand{width:auto}.footer>p{flex-basis:100%}}

/* Transparent logo: complete artwork, no crop or backdrop. */
.official-logo{background:transparent;overflow:visible;border-radius:0}.official-logo img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain;left:auto;top:auto}
