@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;src:url("pm-cormorant-regular.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;src:url("pm-cormorant-medium.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;src:url("pm-cormorant-italic.woff2") format("woff2");font-display:swap}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:400;src:url("pm-dm-regular.woff2") format("woff2");font-display:swap}
@font-face{font-family:"DM Sans";font-style:normal;font-weight:600;src:url("pm-dm-semibold.woff2") format("woff2");font-display:swap}
:root{--navy:#122e57;--deep:#102a52;--cream:#faf7ee;--gold:#c99a39;--gold-light:#ddb35c;--soft:#f0eadc;--muted:#596579;--line:#122e5726;--display:"Cormorant Garamond",Georgia,serif;--body:"DM Sans","Trebuchet MS",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--navy);font-family:var(--body);font-size:17px;line-height:1.8;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-underline-offset:5px}
button{font:inherit}
img{max-width:100%;display:block}
p{margin:0 0 24px}
h1,h2{font-family:var(--display);font-weight:500;letter-spacing:-.045em;line-height:1.02;margin:0}
.wrap{width:min(1200px,88%);margin-inline:auto}
.skip{position:absolute;left:20px;top:-100px;padding:10px 18px;background:white;z-index:30}
.skip:focus{top:10px}
:focus-visible{outline:3px solid #af7723;outline-offset:5px}
.site-header{border-bottom:1px solid var(--line)}
.header-inner{min-height:98px;display:flex;justify-content:space-between;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:11px;color:var(--navy);text-decoration:none;white-space:nowrap;font:500 27px/1 var(--display);letter-spacing:-.055em}
.brand-mark{display:block;position:relative;width:48px;height:49px;overflow:hidden;flex:none}
.brand-mark img{position:absolute;width:109px;max-width:none;height:auto;left:-30px;top:-18px;mix-blend-mode:darken}
.brand small{display:block;text-align:center;font:600 8px var(--body);letter-spacing:.48em;margin-top:8px}
.desktop-nav{display:flex;gap:28px;align-items:center;margin-left:auto}
.desktop-nav a,.basket,.mobile-nav a{font-size:12px;font-weight:600;text-decoration:none}
.desktop-nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:9px}
.desktop-nav a:hover,.basket:hover{text-decoration:underline;text-underline-offset:6px}
.shop-link{padding:11px 23px;background:var(--gold-light);border-radius:99px;min-height:44px;display:inline-flex;align-items:center;gap:15px}
.header-actions{display:flex;gap:18px;align-items:center}
.basket{display:flex;min-height:44px;align-items:center}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;padding:12px;background:transparent;cursor:pointer}
.menu-toggle span{display:block;background:var(--navy);height:1.5px;margin:5px 0}
.mobile-nav[hidden]{display:none}
.mobile-nav{padding-block:4px 24px;display:grid;gap:5px}
.mobile-nav a{padding:10px 0;min-height:44px}
.introduction{padding-block:72px 75px;display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);column-gap:76px;grid-template-rows:auto auto;align-content:center}
.introduction-heading{grid-column:1;grid-row:1;align-self:end;padding-top:24px}
.eyebrow{font-size:10px;text-transform:uppercase;font-weight:600;letter-spacing:.19em;display:flex;gap:14px;align-items:center;margin-bottom:23px}
.little-line{display:inline-block;height:1px;width:34px;background:var(--gold)}
h1{font-size:clamp(60px,6.4vw,94px);margin-bottom:28px}
.greeting{font-family:var(--display);font-size:32px;line-height:1.25;font-weight:500;letter-spacing:-.02em;margin-bottom:25px;max-width:420px}
.greeting .aside{font-size:.7em;font-style:italic;white-space:nowrap}
.introduction-text{grid-column:1;grid-row:2;align-self:start;max-width:470px}
.introduction-text p{font-size:17px;line-height:1.85}
.small-star{display:block;font-family:Georgia,serif;color:#9f7526;font-size:37px;line-height:1;margin-top:26px}
.family-photo{grid-column:2;grid-row:1/3;margin:0;align-self:center}
.family-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:24px}
.family-photo figcaption{font-size:11px;letter-spacing:.055em;margin-top:16px;color:var(--muted);text-align:center}
.family-photo figcaption span{padding-inline:9px;color:#9f7526}
.purpose{background:var(--navy);color:var(--cream)}
.purpose-inner{padding-block:88px 90px}
.purpose-label{color:#f3d79d;margin-bottom:43px}
.purpose-label .little-line{background:var(--gold-light);width:48px}
.purpose-origin p{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:80px;align-items:center;margin:0;color:#f4eee2}
.origin-line{display:block;font:500 55px/1.12 var(--display);letter-spacing:-.025em}
.origin-rest{display:block;font-size:20px;line-height:1.85}
.purpose-hope{border-top:1px solid #faf7ee30;margin-top:67px;padding-top:64px}
.purpose-hope p{margin:0}
.hope-line{display:block;font:500 70px/1.1 var(--display);letter-spacing:-.025em;color:#f3d79d;max-width:1100px}
.hope-rest{display:block;font-size:20px;line-height:1.85;max-width:760px;margin-top:35px;color:#f4eee2}
.ai-section{display:grid;grid-template-columns:210px minmax(0,1fr);gap:58px;padding-block:55px 48px}
.ai-heading{padding-top:3px}
.ai-heading .eyebrow{font-size:8px;gap:9px;letter-spacing:.1em;margin-bottom:15px}
h2{font-size:clamp(50px,5vw,70px)}
.ai-heading h2{font-size:43px}
.ai-copy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;row-gap:20px}
.ai-copy p{font-size:15px;line-height:1.8;margin:0}
.ai-copy .transparency{grid-column:1/-1;font-weight:600;font-size:16px;line-height:1.65;margin:0}
.quality-note{grid-column:1/-1;border-top:1px solid var(--line);padding-top:17px}
.quality-note p{font-size:13px;line-height:1.8;margin:0}
.quality-note strong{font-weight:600}
.farewell{text-align:center;padding-block:0 79px}
.farewell-rule{display:flex;align-items:center;justify-content:center;gap:23px;margin-bottom:41px}
.farewell-rule span{height:1px;background:var(--line);width:160px}
.farewell-rule b{color:#9f7526;font:400 32px/1 Georgia,serif}
.farewell-wish{font:500 37px/1.22 var(--display);letter-spacing:-.025em;max-width:680px;margin:0 auto 27px}
.contact-line{font-size:16px;margin-bottom:2px}
.contact-line a{text-decoration-color:var(--gold);text-decoration-thickness:2px}
.personal-aside{font-size:13px;color:var(--muted);margin:0 0 28px}
.signature{font:italic 500 43px/1.1 var(--display);letter-spacing:-.035em;margin:0 0 8px}
.signature-brand{font-size:10px;letter-spacing:.17em;text-transform:uppercase;margin:0}
.closing-actions{display:flex;gap:29px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:33px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--gold-light);font-size:12px;font-weight:600;padding:13px 24px;min-height:49px;border-radius:99px;text-decoration:none;transition:background .2s}
.button:hover{background:#cea146}
.email-link{display:inline-flex;gap:18px;align-items:center;font-size:12px;font-weight:600;text-decoration:underline;text-decoration-color:var(--gold);min-height:44px}
.site-footer{border-top:1px solid var(--line)}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:35px;padding-block:35px 25px}
.footer-name{font:500 26px/1.2 var(--display);letter-spacing:-.025em}
.footer-inner p{font-size:11px;color:var(--muted);margin:7px 0 0}
.footer-inner nav{display:flex;gap:27px;flex-wrap:wrap}
.footer-inner nav a{font-size:11px;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.footer-inner nav a:hover{text-decoration:underline}
.footer-bottom{padding-block:0 23px;font-size:10px;color:var(--muted)}
@media(min-width:1500px){.introduction{padding-top:84px;padding-bottom:84px}}
@media(max-width:1100px){.wrap{width:90%}.introduction{column-gap:42px;padding-block:56px}.purpose-origin p{gap:48px}.origin-line{font-size:48px}.origin-rest,.hope-rest{font-size:18px}.ai-section{grid-template-columns:180px minmax(0,1fr);gap:35px}.desktop-nav{gap:19px}.header-inner{gap:23px}.hope-line{font-size:62px}.greeting{font-size:29px}.introduction-text p{font-size:16px}.small-star{margin-top:17px}}
@media(max-width:900px){
  .desktop-nav{display:none}.menu-toggle{display:block}.header-actions{margin-left:auto}
  .header-inner{min-height:84px}.brand{font-size:25px}.brand-mark{width:38px;height:40px}.brand-mark img{width:90px;left:-25px;top:-15px}
  .introduction{grid-template-columns:1fr 1fr;gap:30px}.introduction-heading{grid-column:1/-1;grid-row:1;padding-top:0}
  h1{font-size:76px;margin-bottom:19px}.greeting{max-width:none;font-size:31px;margin-bottom:0}
  .introduction-text{grid-column:1;grid-row:2;align-self:center}.family-photo{grid-column:2;grid-row:2}
  .purpose-inner{padding-block:65px}.purpose-origin p{grid-template-columns:1fr;gap:28px}.origin-line{font-size:49px;max-width:650px}.origin-rest{max-width:600px}.purpose-hope{margin-top:48px;padding-top:46px}.hope-line{font-size:57px}
  .ai-section{grid-template-columns:1fr;gap:24px;padding-block:40px}.ai-heading .eyebrow{margin-bottom:10px}.ai-copy{max-width:none}
  .ai-heading h2{font-size:40px}.footer-inner{align-items:start}.footer-inner nav{gap:10px 20px}
}
@media(max-width:600px){
  .wrap{width:calc(100% - 40px)}.header-inner{gap:12px}.header-actions{gap:12px}.basket{font-size:11px}
  .introduction{display:grid;grid-template-columns:1fr;gap:0;padding-block:38px 37px}
  .introduction-heading{grid-column:1;grid-row:1}.eyebrow{font-size:9px;margin-bottom:18px}
  h1{font-size:64px;margin-bottom:22px;letter-spacing:-.045em}.greeting{font-size:29px;max-width:320px;line-height:1.2;margin-bottom:27px}
  .family-photo{grid-column:1;grid-row:2}.family-photo img{border-radius:18px}
  .family-photo figcaption{font-size:9px;margin-top:12px;letter-spacing:.035em}
  .introduction-text{grid-column:1;grid-row:3;max-width:none;margin-top:28px}.introduction-text p{font-size:15px;line-height:1.85;margin-bottom:0}.small-star{font-size:30px;margin-top:21px}
  .purpose-inner{padding-block:51px 56px}.purpose-label{font-size:8px;letter-spacing:.14em;margin-bottom:32px}.purpose-label .little-line{width:28px}
  .purpose-origin p{gap:27px}.origin-line{font-size:39px;line-height:1.15}.origin-rest{font-size:17px;line-height:1.85}
  .purpose-hope{margin-top:42px;padding-top:40px}.hope-line{font-size:46px;line-height:1.12}.hope-rest{font-size:17px;margin-top:29px;line-height:1.85}
  .ai-section{padding-block:34px 32px;gap:22px}.ai-heading h2{font-size:37px}.ai-heading .eyebrow{font-size:8px}
  .ai-copy{grid-template-columns:1fr;gap:18px}.ai-copy p{font-size:15px;line-height:1.8;margin:0}.ai-copy .transparency{font-size:15px;margin:0}
  .quality-note{padding-top:15px}.quality-note p{font-size:13px;line-height:1.8}
  .farewell{padding-bottom:48px}.farewell-rule{gap:20px;margin-bottom:30px}.farewell-rule span{width:90px}
  .farewell-wish{font-size:31px;line-height:1.2;margin-bottom:23px}
  .contact-line{font-size:14px;line-height:1.8;max-width:280px;margin-inline:auto;margin-bottom:6px}
  .personal-aside{font-size:11px;margin-bottom:24px}.signature{font-size:39px}.signature-brand{font-size:9px}
  .closing-actions{gap:20px;margin-top:28px}.button{font-size:11px;padding:12px 21px;gap:20px}.email-link{font-size:11px}
  .footer-inner{display:block;padding-block:27px 16px}.footer-inner nav{gap:6px 21px;margin-top:13px}.footer-inner nav a{font-size:10px}.footer-bottom{font-size:9px;padding-bottom:23px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
