/* Theme Name: Sea Glass Shore
Version: 1.0.2
Description: Coastal WordPress theme with native Elementor page support. Includes WooCommerce styling.
Author: Sea Glass Shore
License: GPL-2.0-or-later
Text Domain: sea-glass-shore
*/
:root{--ivory:#f8f6ef;--white:#fffefa;--ink:#28454c;--teal:#167c8a;--muted:#5e777d;--aqua:#def1f2;--sand:#e9e1d3;--line:#cbdfe1;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--ivory);color:var(--ink);font:16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}img{max-width:100%;height:auto;display:block}button,input,select{font:inherit}a,button,select,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a87530;outline-offset:5px}.skip-link{position:fixed;left:16px;top:-90px;z-index:100;background:white;padding:12px}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:30;background:rgba(248,246,239,.98);border-bottom:1px solid #dce2e3}.header-inner{max-width:1440px;margin:auto;min-height:100px;padding:18px 4.5%;display:flex;align-items:center;gap:30px;justify-content:space-between}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;flex-shrink:0}.brand-mark{width:38px;height:44px;border:1px solid #79b4bd;border-radius:55% 45% 65% 35%;position:relative;transform:rotate(12deg);background:#d6edef}.brand-mark:after{content:'≈';font:30px Georgia;position:absolute;left:5px;top:0;color:#388894;transform:rotate(-12deg)}.brand-name{font:25px/1.1 var(--serif);letter-spacing:-.6px}.brand-sub{display:block;font:9px/2 var(--sans);letter-spacing:2.4px;text-transform:uppercase;color:var(--muted);margin-top:5px}.site-nav{display:flex;align-items:center;gap:23px}.site-nav a{font-size:12px;text-decoration:none;white-space:nowrap;padding:7px 0;border-bottom:1px solid transparent}.site-nav a:hover,.site-nav a[aria-current=page]{border-color:var(--teal)}.site-nav .portal-link{border:1px solid var(--teal);padding:10px 16px}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;padding:9px 14px;color:var(--ink)}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-1.6px;margin:0 0 24px}h1{font-size:clamp(43px,5.25vw,76px)}h2{font-size:clamp(34px,3.6vw,52px)}h3{font-size:28px;letter-spacing:-.6px}p{margin:0 0 22px}p:last-child{margin-bottom:0}.eyebrow,.eyebrow p{font:10px/1.7 var(--sans);letter-spacing:2.5px;font-weight:650;color:#397f8a;text-transform:uppercase;margin-bottom:24px}.lead,.lead p{font-size:18px;line-height:1.75;max-width:580px;color:#53737a}.small,.small p{font-size:13px;color:var(--muted)}.sgs-section{padding:82px 5.5%;position:relative}.sgs-section>.elementor-container,.sgs-row{max-width:1200px;margin:0 auto;display:flex;gap:64px;align-items:center}.sgs-col{min-width:0;flex:1}.sgs-section .elementor-column{min-width:0}.sgs-section .elementor-widget-wrap{display:block!important;padding:0!important}.sgs-section>.elementor-container>.elementor-column{flex:1}.sgs-section>.elementor-container{gap:64px}.elementor-widget-heading .elementor-heading-title{font-family:var(--serif);font-weight:400;color:var(--ink);line-height:1.12;letter-spacing:-1.6px}.elementor-widget-heading h1.elementor-heading-title{font-size:clamp(43px,5.25vw,76px)}.elementor-widget-heading h2.elementor-heading-title{font-size:clamp(34px,3.6vw,52px)}.elementor-widget-heading h3.elementor-heading-title{font-size:28px;letter-spacing:-.6px}.elementor-widget-text-editor{color:var(--ink);font:16px/1.75 var(--sans)}.sgs-section .elementor-widget{margin-bottom:22px}.sgs-section .elementor-widget:last-child{margin-bottom:0}.sgs-button,.sgs-section .elementor-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 25px;background:var(--teal);border:1px solid var(--teal);color:white;font:12px/1.6 var(--sans);letter-spacing:.25px;text-decoration:none;border-radius:0;transition:background .2s,transform .2s}.sgs-button:after,.elementor-button-text:after{content:'↗';padding-left:22px}.sgs-button:hover,.sgs-section .elementor-button:hover{background:#116271;transform:translateY(-1px);color:white}.secondary .elementor-button,.sgs-button.secondary{background:transparent;color:var(--teal)}.secondary .elementor-button:hover,.sgs-button.secondary:hover{background:#def1f2;color:var(--ink)}.home-hero{min-height:690px;padding:105px 5.5% 80px;background:linear-gradient(90deg,rgba(248,246,239,.98) 0%,rgba(248,246,239,.88) 32%,rgba(248,246,239,.04) 78%),url('assets/shore.jpg') center 59%/cover}.home-hero .sgs-row,.home-hero>.elementor-container{display:block}.home-hero .sgs-col,.home-hero .elementor-column{max-width:650px}.home-hero .lead{max-width:490px}.home-hero .hero-note p,.hero-note{font-size:11px;letter-spacing:.7px;color:#547b83;margin-top:25px}.home-hero .elementor-widget-button,.home-hero .button-wrap{display:inline-block!important;width:auto;margin-right:12px;margin-bottom:0}.home-hero .hero-note{display:block;margin-top:25px}.ribbon{padding:23px 5%;background:var(--aqua);border-bottom:1px solid #c2e0e3}.ribbon .ribbon-text,.ribbon-text p{font:18px/1.4 var(--serif);text-align:center;letter-spacing:.1px}.ribbon .sgs-row{display:block}.editorial-image img{width:100%;height:450px;object-fit:cover}.intro-split .editorial-image img{border-radius:48% 48% 0 0;object-position:60% center}.section-heading{padding-top:55px;padding-bottom:24px}.section-heading .sgs-row{display:block}.section-heading p{max-width:620px}.service-cards{padding-top:18px}.service-cards .sgs-row,.service-cards>.elementor-container{gap:24px;align-items:stretch}.service-cards .sgs-col,.service-cards>.elementor-container>.elementor-column{padding:46px;background:#e2f1f2;border:1px solid #c5e1e4}.service-cards .sgs-col+div,.service-cards>.elementor-container>.elementor-column+div{background:#eee8db;border-color:#ded5c4}.service-cards h2{font-size:42px}.steps{padding-top:24px;padding-bottom:75px}.steps .sgs-row,.steps>.elementor-container{gap:40px;align-items:stretch}.steps .sgs-col,.steps>.elementor-container>.elementor-column{border-top:1px solid #b2d2d6;padding-top:25px}.steps p{font-size:15px;color:var(--muted)}.dawn-split{background:#e9f3f3}.dawn-split .editorial-image img{object-position:center;min-height:420px}.faq-section .sgs-row{display:block;max-width:900px}.faq-list{border-top:1px solid var(--line);margin:30px 0}.faq-list details{border-bottom:1px solid var(--line);padding:0}.faq-list summary{list-style:none;cursor:pointer;padding:23px 40px 23px 0;font-size:16px;position:relative;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:8px;top:16px;font:27px var(--serif)}.faq-list details[open] summary:after{content:'−'}.faq-list details p{padding:0 36px 24px 0;color:var(--muted);font-size:15px;max-width:780px}.closing{background:#d9eff0;text-align:center;padding:80px 5%}.closing .sgs-row{display:block;max-width:740px}.closing p{max-width:580px;margin-left:auto;margin-right:auto}.page-intro{padding:85px 5.5% 70px;background:linear-gradient(115deg,#e4f2f3,#f8f6ef 80%);border-bottom:1px solid var(--line)}.page-intro .sgs-row{display:block}.page-intro .lead{max-width:680px}.soft-band{background:#e9f3f3}.soft-band .sgs-row,.scope-note .sgs-row{display:block;max-width:900px}.scope-note{background:#eee9df}.scope-note h2{font-size:38px}.scope-note p{font-size:15px}.contact-split .sgs-row,.contact-split>.elementor-container{align-items:stretch}.contact-split .sgs-col+div{border-left:1px solid var(--line);padding-left:60px}.contact-split h2{font-size:39px}.contact-image{padding-top:0}.contact-image .sgs-row{display:block}.contact-image img{height:350px;width:100%;object-fit:cover}.planner-section .sgs-row{display:block}.planner{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:start}.planner label{display:block;margin:25px 0 8px;font-size:13px;font-weight:600}.planner select{width:100%;padding:14px;background:var(--white);border:1px solid #9dc7cd;color:var(--ink);border-radius:0;min-height:52px}.planner aside{background:var(--aqua);padding:44px}.planner aside h3{margin-top:25px}.planner aside p{font-size:14px}.planner hr{border:0;border-top:1px solid #b2d2d6;margin:25px 0}.site-footer{background:#203e38;color:#edf2e9;padding:65px 5.5% 26px}.footer-main{max-width:1200px;margin:auto;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}.site-footer .brand-sub{color:#c1d3c6}.site-footer .brand-name{font-size:30px}.site-footer p{font-size:13px;color:#d1ded2;max-width:350px;margin-top:22px}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links a{font-size:13px;text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-label{font:10px var(--sans);letter-spacing:2px;color:#b5c8ba;margin-bottom:10px}.footer-bottom{max-width:1200px;margin:44px auto 0;border-top:1px solid #4b655b;padding-top:22px}.footer-bottom p{max-width:850px;font-size:11px;margin:0 0 12px;color:#bdcfc0}.footer-bottom small{font-size:10px;color:#bdcfc0}.preview-note{padding:9px 5%;text-align:center;background:#eee6d7;font-size:11px;color:#456c74}.woocommerce{max-width:1200px;margin:50px auto;padding:0 5%}.woocommerce button.button,.woocommerce a.button{background:var(--teal)!important;color:white!important;border-radius:0!important}.woocommerce input,.woocommerce select{padding:12px;border:1px solid var(--line)}
@media(min-width:1000px){.home-hero h1{max-width:650px}.home-hero .lead{max-width:510px}}
@media(max-width:1100px){.site-nav{gap:13px}.site-nav a{font-size:11px}.header-inner{gap:16px}.brand-name{font-size:23px}.sgs-section>.elementor-container,.sgs-row{gap:38px}}
@media(max-width:920px){.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ivory);padding:20px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav a{padding:12px;font-size:14px}.site-nav .portal-link{margin-top:10px;text-align:center}.header-inner{min-height:84px}.planner{gap:35px}.service-cards .sgs-col,.service-cards>.elementor-container>.elementor-column{padding:28px}.home-hero{min-height:620px}}
@media(max-width:680px){body{font-size:15px}.header-inner{padding:15px 6%;min-height:80px}.brand-name{font-size:22px}.brand-sub{font-size:8px;letter-spacing:1.6px}.brand-mark{width:31px;height:37px}.brand-mark:after{font-size:25px}.sgs-section{padding:55px 6%}.sgs-row,.sgs-section>.elementor-container{flex-direction:column;gap:35px}.sgs-col,.sgs-section>.elementor-container>.elementor-column{width:100%!important;max-width:100%!important}.home-hero{padding:62px 6% 55px;min-height:660px;background:linear-gradient(90deg,rgba(248,246,239,.97),rgba(248,246,239,.72)),url('assets/shore.jpg') 65% center/cover}.home-hero h1{font-size:47px}.home-hero .lead,.lead p{font-size:17px}.home-hero .button-wrap,.home-hero .elementor-widget-button{margin:0 8px 12px 0!important}.sgs-button,.sgs-section .elementor-button{padding:12px 18px}.hero-note{font-size:10px!important}.ribbon{padding:22px 6%}.ribbon-text p{font-size:17px}.editorial-image img,.dawn-split .editorial-image img{height:320px;min-height:0}.section-heading{padding-bottom:16px}.service-cards{padding-top:10px}.service-cards .sgs-col,.service-cards>.elementor-container>.elementor-column{padding:30px}.service-cards .sgs-row{gap:20px}.steps{padding-top:15px}.steps .sgs-row{gap:25px}.steps h3{font-size:26px}.page-intro{padding-top:60px;padding-bottom:45px}.page-intro h1{font-size:45px}.planner{grid-template-columns:1fr;gap:30px}.planner aside{padding:30px}.contact-split .sgs-col+div{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>div:first-child{grid-column:1/-1}.site-footer{padding:50px 6% 24px}.footer-bottom{margin-top:30px}.faq-list summary{font-size:15px}.contact-image{padding-top:0}.closing{padding:60px 6%}.scope-note h2{font-size:32px}.sgs-section .elementor-widget{margin-bottom:20px}.eyebrow,.eyebrow p{font-size:9px;letter-spacing:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.sgs-section .elementor-widget-heading .elementor-heading-title{font-family:var(--serif);font-weight:400;color:var(--ink)}body .sgs-section .elementor-button{background-color:var(--teal);font-family:var(--sans);font-weight:400}body .sgs-section .secondary .elementor-button{background-color:transparent;color:var(--teal)}body .sgs-section .elementor-button:hover{background-color:#116271;color:white}body .sgs-section .secondary .elementor-button:hover{background-color:#def1f2;color:var(--ink)}

.sea-glass-story{background:#f0ece2;text-align:center}.sea-glass-story .sgs-row,.sea-glass-story>.elementor-container{display:block;max-width:830px}.sea-glass-story p{max-width:720px;margin-left:auto;margin-right:auto}.sea-glass-story h2{font-size:clamp(34px,3.4vw,48px)}

.site-footer{background:#eee9df;color:#28454c;border-top:1px solid #ded8cb}.site-footer .brand-sub,.site-footer p,.footer-label,.footer-bottom p,.footer-bottom small{color:#5c7275}.footer-bottom{border-top-color:#cfcfc5}.site-footer .brand-mark{background:#d6edef}.brand-sub{letter-spacing:1.9px;font-size:10px}@media(max-width:680px){.header-inner .brand-sub{font-size:8px;letter-spacing:1.2px}}

.widget{margin-bottom:22px}.widget:last-child{margin-bottom:0}.button-wrap{margin-top:8px}header .brand{min-width:0}@media(max-width:680px){.header-inner{gap:10px}.header-inner .brand{gap:9px;flex-shrink:1}.header-inner .brand-name{font-size:21px}.header-inner .brand-sub{font-size:7px;letter-spacing:1px;max-width:180px}.menu-toggle{font-size:13px;padding:8px 10px;flex-shrink:0}.home-hero h1{font-size:clamp(36px,10.5vw,47px)}.home-hero{min-height:620px}}

/* Store pages share the coastal layout without a legacy widget sidebar. */
.sgs-store{padding:60px 6%;min-height:55vh}.sgs-store-inner{max-width:1150px;margin:auto}.sgs-store .woocommerce-breadcrumb{font-size:13px;margin-bottom:28px}.sgs-store .product_title{font-size:clamp(36px,4vw,56px)}.sgs-store .woocommerce-tabs{clear:both;padding-top:35px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:#e9f3f3;border:1px solid #b2d2d6;border-radius:0}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:#f8f6ef}.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-weight:400}.woocommerce div.product .price{color:#167c8a}.woocommerce .quantity input{min-height:48px}.woocommerce button.button{min-height:48px}.woocommerce select{width:100%;max-width:100%}.sgs-store .product_meta{font-size:13px;color:#53737a}@media(max-width:680px){.sgs-store{padding:38px 6%}.woocommerce div.product div.images,.woocommerce div.product div.summary{width:100%;float:none}.woocommerce div.product div.images img{max-height:280px;object-fit:cover}.woocommerce table.variations th,.woocommerce table.variations td{display:block;width:100%}}
