.calendar-wrap{width:min(1100px,calc(100% - 36px));margin:auto}
.calendar-hero{background:linear-gradient(145deg,#fbf6ec 0%,#e8f3ee 100%);overflow:hidden}
.hero-grid,.spotlight-grid{display:grid;align-items:center;gap:36px}
.hero-grid{padding-block:64px}
.hero-copy h1{font-size:clamp(2.25rem,5vw,4rem);line-height:1.18;margin:12px 0 22px;color:#173b3c;letter-spacing:-.035em}
.hero-copy .lead{max-width:35em;font-size:clamp(1.08rem,2.2vw,1.35rem);font-weight:650;color:#245a58}
.hero-one-line{margin:0 0 12px;color:#0b5b5f;font-size:1.2rem;font-weight:800}
.store-button{display:inline-flex;align-items:center;justify-content:center;background:#0b5b5f;color:white;min-height:48px;padding:10px 24px;border-radius:999px;font-weight:800;text-decoration:none;box-shadow:0 8px 20px rgba(11,91,95,.18)}
.store-button[aria-disabled="true"]{cursor:default}
.hero-visual{justify-self:center;width:min(100%,330px);padding:9px;border-radius:28px;background:#fff;box-shadow:0 20px 44px rgba(15,67,64,.14);overflow:hidden}
.hero-visual img{display:block;width:100%;height:540px;object-fit:cover;object-position:center 30%;border-radius:20px}
.calendar-section{padding-block:64px}
.calendar-section h2{font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.25;margin:10px 0 22px;color:#173b3c}
.calendar-section p{color:#536a69}
.calendar-section .section-intro{max-width:68ch;font-size:1.08rem}
.appstore-gallery-section{background:#fffdf8}
.appstore-gallery{display:flex;gap:14px;max-width:100%;overflow-x:auto;padding:4px 3px 20px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}
.appstore-gallery img{display:block;flex:0 0 min(25vw,270px);width:min(25vw,270px);height:auto;align-self:start;border-radius:18px;box-shadow:0 12px 26px rgba(15,67,64,.13);scroll-snap-align:start}
.today-v14-image{justify-self:center;width:min(100%,340px)}
.today-v14-image img{height:auto;max-height:620px;object-fit:contain}
.flexible-grid{display:grid;gap:16px}
.flexible-grid article{padding:24px;background:#fff;border:1px solid #dce9e2;border-radius:22px;box-shadow:0 8px 24px rgba(15,67,64,.05)}
.flexible-grid h3{margin:0 0 8px;color:#0b5b5f;font-size:1.22rem}
.flexible-grid p{margin:0}
.gentle{background:#edf5f0}
.notice-comparison{display:grid;grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr);gap:16px;align-items:center;margin-top:30px}
.showcase-panel{min-width:0;margin:0;background:#fff;border:1px solid #dce9e2;border-radius:24px;padding:10px;box-shadow:0 12px 32px rgba(15,67,64,.08);overflow:hidden}
.showcase-panel img{display:block;width:100%;object-fit:cover;border-radius:17px}
.notice-comparison .showcase-panel{display:flex;flex-direction:column;justify-content:center}
.notice-comparison .showcase-panel img{width:100%;height:auto;max-height:430px;object-fit:contain}
.showcase-panel figcaption{padding:10px 6px 4px;text-align:center;color:#245a58;font-weight:800}
.comparison-arrow{text-align:center;color:#bd832e;font-size:2.4rem;font-weight:900}
.spotlight-grid>div:first-child{max-width:43ch}
.spotlight-grid p{font-size:1.1rem;line-height:1.8}
.calendar-focus{justify-self:center;width:min(100%,530px)}
.calendar-focus img,.character-focus img{height:auto;object-fit:contain}
.sticker-strip{display:flex;gap:12px;max-width:100%;overflow-x:auto;padding:12px 3px 18px;scroll-snap-type:x proximity;overscroll-behavior-inline:contain}
.sticker-strip img{flex:none;width:84px;height:84px;object-fit:contain;padding:8px;background:#fff;border:1px solid #dce9e2;border-radius:18px;box-shadow:0 5px 15px rgba(15,67,64,.06);scroll-snap-align:start}
.custom-sticker-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:22px;margin-top:26px;padding:24px;background:#fbf6ec;border:1px solid #e9ddc9;border-radius:24px}
.custom-sticker-panel h3{margin:0 0 10px;color:#173b3c;font-size:1.4rem;line-height:1.3}
.custom-sticker-panel p{margin:0;line-height:1.7}
.custom-sticker-panel img{display:block;width:100%;height:auto;border-radius:16px;border:1px solid #e9ddc9}
.feature-grid{display:grid;gap:20px}
.feature-card{min-width:0;background:#fff;border:1px solid #dce9e2;border-radius:24px;overflow:hidden;box-shadow:0 8px 28px rgba(15,67,64,.06)}
.feature-card>div:not(.mini-icon){padding:20px}
.mini-feature{display:flex;flex-direction:column}
.mini-icon{display:grid;place-items:center;align-self:flex-start;width:48px;height:48px;margin:20px 20px 0;background:#edf5f0;border-radius:14px;color:#0b5b5f;font-size:24px;font-weight:800}
.mini-feature h3{font-size:1.18rem;line-height:1.35;margin:0 0 9px;color:#173b3c}
.mini-feature p{margin:0}
.mini-feature>img{display:block;width:100%;height:160px;object-fit:cover;object-position:center 35%;margin-top:auto}
.mini-feature>img[src*="checklist-focus"],.mini-feature>img[src*="anniversary-focus"],.mini-feature>img[src*="holiday-lunar-focus"],.mini-feature>img[src*="private-data-focus"]{object-fit:contain;background:#f6f8f5}
.privacy-card{background:#fff;border:1px solid #dce9e2;border-radius:26px;padding:30px;box-shadow:0 12px 32px rgba(15,67,64,.06)}
.privacy-card h2{margin-bottom:16px}
.privacy-card p{max-width:74ch}
.privacy-card a{font-weight:800}
.pricing-section{background:#fbf6ec}
.pricing-card{background:#fff;border:2px solid #dce9e2;border-radius:28px;padding:30px;display:grid;gap:12px}
.pricing-card h2{margin-bottom:10px}
.pricing-card p{margin:0}
.prices{display:flex;gap:12px;flex-wrap:wrap}
.prices>div{background:#eef6f1;border-radius:18px;padding:14px 22px;min-width:130px;display:flex;flex-direction:column;color:#295c59}
.prices strong{font-size:1.55rem;line-height:1.3;color:#0b5b5f}
.pricing-card .small-note{grid-column:1/-1;font-size:.89rem}
.pricing-card .family-sharing-note{grid-column:1/-1;font-weight:700;color:#0b5b5f}
.pricing-card .store-button{justify-self:start}
.calendar-footer{display:flex;flex-wrap:wrap;gap:8px 20px}
.calendar-footer small{flex-basis:100%;color:#536a69}
.nav{align-items:center}
#calendar-language{min-width:42px;min-height:42px;padding:5px 10px;border:1px solid #c6e0d9;border-radius:999px;background:#fff;color:#0b5b5f;font:inherit;font-weight:800;cursor:pointer}
#calendar-language:focus-visible,.sticker-strip:focus-visible{outline:3px solid #e5b558;outline-offset:3px}
@media(min-width:760px){.hero-grid{grid-template-columns:1.25fr .75fr}.spotlight-grid{grid-template-columns:.85fr 1.15fr}.feature-grid,.flexible-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pricing-card{grid-template-columns:1.4fr .8fr}.prices{align-content:center}}
@media(max-width:759px){.hero-grid,.spotlight-grid,.custom-sticker-panel{grid-template-columns:minmax(0,1fr)}.spotlight-grid{gap:24px}.notice-comparison{grid-template-columns:minmax(0,1fr)}.comparison-arrow{transform:rotate(90deg);line-height:1}}
@media(max-width:520px){.hero-grid{padding-block:38px;gap:25px}.calendar-section{padding-block:42px}.hero-visual{width:min(82%,280px)}.hero-visual img{height:420px}.pricing-card,.privacy-card{padding:22px}.nav{flex-wrap:wrap;gap:8px 14px}.sticker-strip img{width:72px;height:72px}.calendar-wrap{width:calc(100% - 30px)}.appstore-gallery img{flex-basis:61vw;width:61vw}}
