/* Quiet coastal blues, with gold retained for the brand accents. */
:root {--ink:#183a4a;--aqua:#b8deeb;--sky:#cceaff;--cream:#e0f2ff;--pink:#dbeef6;--line:rgba(37,86,111,.18);}
body {background:#e0f2ff;color:#183a4a;}
header {background:#ffd6e5;border-bottom-color:#ccdee8;}
.announcement {background:#0077cc;}
.hero {background:radial-gradient(ellipse at 85% 12%,#ffffffed 0%,transparent 49%),radial-gradient(ellipse at 12% 95%,#a4d5ef 0%,transparent 58%),linear-gradient(135deg,#cceaff 0%,#e3f5ff 42%,#91cef5 100%);}
.hero::before {width:125%;height:240px;left:-12%;bottom:-190px;border:1px solid #ffffff9c;background:#eaf7fc66;filter:none;transform:rotate(-7deg);}
.hero::after {width:105%;height:230px;right:-35%;top:auto;bottom:-160px;border:1px solid #ffffff80;background:#ffffff26;filter:none;transform:rotate(-12deg);}
.hero-product {box-shadow:0 30px 65px #244c6926;}
.benefits {background:#d4edff;color:#244b60;}
.shop-section {background:linear-gradient(180deg,#e8f6ff,#cdeaff);}
.eyebrow {color:#47768f;}
.product-summary,.catalog-card > p:not(.product-price):not(.tag) {color:#526c7b;}
.category-button {background:#e0f2ff;color:#244b60;}
.category-button small {background:#deedf5;color:#345f77;}
.category-button.active {background:#0077cc;color:white;}
.category-empty {background:#e4f1f7;border-color:#bfd5e1;}
.product-photo,.instagram-card {background:#dcecf4;}
.save-product {background:#f6fbfdf2;border-color:#c7dae5;}
.photo-count {background:#f6fbfdef;color:#25495e;}
.story {background:radial-gradient(ellipse at 0% 100%,#326c8233,transparent 65%),linear-gradient(135deg,#174e6c,#26769c);}
.story-copy p {color:#e3eff6;}
.story .eyebrow,.story summary {color:#cae6f3;}
.story details {border-color:#ffffff40;}
.blog-section {background:linear-gradient(180deg,#ceeaff,#e3f5ff);}
.blog-section .section-heading p:not(.eyebrow),.blog-card-copy > p:not(.eyebrow),.blog-subtitle {color:#506c7d;}
.blog-next {background:#dcecf5;}
.subscription-section {background:#d4edff;color:#183a4a;}
.subscription-intro,.subscription-benefits p,.subscription-renewal p {color:#526c7b;}
.subscription-benefits strong {color:#183a4a;}
.subscription-benefits,.subscription-benefits > div {border-color:#bfd7e4;}
.subscription-visual {background:radial-gradient(ellipse at 42% 36%,#e8f8ff 0%,#88c9f1 40%,#56a9db 75%,#2b82b8 100%);}
.subscription-box {background:#f5fafc;box-shadow:0 30px 65px #244c6933;}
.subscription-renewal {background:#f8fcfe;border-color:#bfd7e4;}
.subscription-note {color:#526c7b;}
.subscription-ribbon {background:#0077cc;color:#fff;}
.social {background:radial-gradient(ellipse at 90% 105%,#a8d6f2 0%,transparent 65%),linear-gradient(180deg,#e0f2ff,#bde2fc);}
.social-links a {background:#f8fcfdd9;border-color:#bfd7e4;}
.instagram-loading,.instagram-fallback {color:#345f77;}
footer {background:#d4edff;border-color:#ccdee8;}
.app-bar {background:#f4fafff5;border-color:#ccdee8;}
.app-bar a,.app-bar button {color:#244b60;}
.app-dialog,.product-dialog,.checkout-dialog,.story-reader,.story-reader-toolbar {background:#f5fafd;color:#183a4a;border-color:#bfd7e4;}
.checkout-summary {background:#e6f1f7;}
.button,.subscription-button,.app-install-action {background:#0077cc;color:#fff;}

/* Sparse shell sketches and long, soft shoreline curves. */
:root {--ocean-shell:none;--ocean-waves:none;}
.hero {background-image:var(--ocean-shell),var(--ocean-waves),radial-gradient(ellipse at 85% 12%,#ffffffed,transparent 49%),linear-gradient(135deg,#cceaff,#e3f5ff 42%,#91cef5);background-size:170px 155px,100% 200px,auto,auto;background-position:43% 8%,center bottom,center,center;background-repeat:no-repeat;}
.hero::before,.hero::after {content:none;}
.shop-section {background-image:var(--ocean-shell),var(--ocean-shell),linear-gradient(180deg,#e8f6ff,#cdeaff);background-size:155px 140px,110px 100px,auto;background-position:98% 35px,1% 92%,center;background-repeat:no-repeat;}
.story {background-image:var(--ocean-shell),var(--ocean-waves),linear-gradient(135deg,#174e6c,#26769c);background-size:210px 190px,100% 160px,auto;background-position:98% 18px,center bottom,center;background-repeat:no-repeat;}
.blog-section {background-image:var(--ocean-shell),var(--ocean-waves),linear-gradient(180deg,#ceeaff,#e3f5ff);background-size:155px 140px,100% 140px,auto;background-position:97% 24px,center bottom,center;background-repeat:no-repeat;}
.subscription-section {background-image:var(--ocean-shell);background-size:140px 128px;background-position:12px 98%;background-repeat:no-repeat;}
.subscription-visual {background-image:var(--ocean-shell),var(--ocean-shell),var(--ocean-waves),radial-gradient(ellipse at 42% 36%,#e8f8ff,#88c9f1 40%,#56a9db 75%,#2b82b8);background-size:150px 136px,105px 96px,100% 180px,auto;background-position:92% 4%,3% 80%,center bottom,center;background-repeat:no-repeat;}
.social {background-image:var(--ocean-shell),var(--ocean-shell),var(--ocean-waves),linear-gradient(180deg,#e0f2ff,#bde2fc);background-size:140px 128px,110px 100px,100% 150px,auto;background-position:3% 20px,98% 90%,center bottom,center;background-repeat:no-repeat;}
footer {background-image:var(--ocean-waves);background-size:100% 90px;background-position:center bottom;background-repeat:no-repeat;}
@media(max-width:800px){
 .hero {background-size:105px 96px,100% 120px,auto,auto;background-position:96% 14px,center bottom,center,center;}
 .shop-section,.blog-section {background-size:85px 78px,100% 100px,auto;}
 .shop-section {background-size:85px 78px,75px 68px,auto;}
 .story {background-size:100px 91px,100% 100px,auto;}
 .social {background-size:80px 73px,70px 64px,100% 100px,auto;background-position:1% 5px,100% 96%,center bottom,center;}
}

.hero-copy > .button { border-radius:0; }

.subscription-button:hover {background:#0077cc;}

.subscription-button { border-radius:0; }

.subscription-ribbon { border-radius:0; }

.product-dialog { border-top-left-radius:0; border-bottom-left-radius:0; }

.dialog-media .gallery-arrow { top:50cqw; }

.product-dialog {width:min(1240px,calc(100% - 32px));max-width:calc(100% - 32px);max-height:94dvh;}
.product-dialog .dialog-layout {grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.product-dialog .dialog-copy {min-width:0;padding:45px 32px 50px;}
@media(max-width:800px){
 .product-dialog {width:calc(100% - 16px);max-width:calc(100% - 16px);}
 .product-dialog .dialog-layout {grid-template-columns:minmax(0,1fr);}
 .product-dialog .dialog-copy {padding:35px 24px 45px;}
}

@media(min-width:801px) and (max-width:1000px){.product-dialog .dialog-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}.product-dialog .dialog-copy{padding:40px 22px;}}

.product-inclusions {white-space:pre-line;}

/* Keep the complete footer logo centred, with contact details on the left. */
footer {display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:18px 24px;}
footer .footer-brand {grid-column:2;grid-row:1;display:flex;align-items:center;gap:18px;justify-self:center;}
footer .footer-email {position:static;transform:none;grid-column:1;grid-row:1;justify-self:start;text-align:left;order:0;}
footer .copyright {grid-column:3;grid-row:1;justify-self:end;margin:0;width:auto;order:0;text-align:right;}
footer .install-app {grid-column:3;grid-row:2;justify-self:end;order:0;}
@media(max-width:1000px){
 footer {grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
 footer .footer-brand {grid-column:1/-1;grid-row:1;}
 footer .footer-email {grid-column:1/-1;grid-row:2;}
 footer .copyright {grid-column:1;grid-row:3;justify-self:start;text-align:left;}
 footer .install-app {grid-column:2;grid-row:3;}
}

footer .contact-email-button {border:0;border-radius:0;padding:8px 4px;background:transparent;color:#183a4a;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:4px;}
footer .contact-email-button:focus-visible {outline:2px solid #0077cc;outline-offset:4px;}
