/*
Theme Name: Ello Storefront Child
Description: Responsive Ello homepage reconstruction for GeneratePress and native WooCommerce with local media and guided content setup.
Author: Custom Development
Template: generatepress
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: ello-storefront
*/

/* Reference footer layout */
.ello-reference-footer{background:#f6f3ef;color:#51677e;border-top:1px solid #e2dfda;}
.ello-reference-footer__inner{max-width:1080px;margin:0 auto;padding:32px 28px 60px;display:grid;grid-template-columns:1.05fr 1.05fr 1.15fr 1fr;gap:60px;align-items:start;}
.ello-reference-footer__column h2{margin:0;color:#5d7084;font-size:16px;line-height:1.3;font-weight:500;letter-spacing:.02em;text-transform:uppercase;}
.ello-reference-footer__rule{display:block;width:30px;height:3px;background:#d9d8d5;margin:13px 0 15px;}
.ello-reference-footer__column nav{display:flex;flex-direction:column;}
.ello-reference-footer__column nav a{color:#173f70;border-bottom:1px solid #e5e4e2;padding:9px 0;font-size:16px;line-height:1.35;}
.ello-reference-footer__column nav a:first-child{padding-top:8px;}
.ello-reference-footer__contact p{margin:0 0 24px;color:#637486;font-size:16px;line-height:1.55;}
.ello-reference-footer__contact .ello-reference-footer__email{display:inline-block;color:#173f70;font-weight:700;font-size:16px;margin:0 0 24px;}
.ello-reference-footer__contact .ello-reference-footer__address{white-space:normal;margin:0;}
.ello-reference-footer__search-column{padding-top:0;}
.ello-reference-footer__search{display:flex;width:100%;height:40px;margin-top:0;}
.ello-reference-footer__search input{min-width:0;flex:1;height:40px;border:1px solid #d5d5d5;border-right:0;border-radius:0;background:#fff;padding:0 11px;color:#333;font:16px/40px inherit;}
.ello-reference-footer__search input::placeholder{color:#777;opacity:1;}
.ello-reference-footer__search button{width:40px;height:40px;border:0;border-radius:0;background:#55b517;color:#fff;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;}
.ello-reference-footer__search button span{width:13px;height:13px;border:3px solid currentColor;border-radius:50%;position:relative;display:block;}
.ello-reference-footer__search button span:after{content:"";position:absolute;width:8px;height:3px;background:currentColor;right:-7px;bottom:-4px;transform:rotate(45deg);transform-origin:left center;}
@media (max-width:900px){.ello-reference-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px;}.ello-reference-footer__search-column{grid-column:1/-1;max-width:360px;}}
@media (max-width:560px){.ello-reference-footer__inner{grid-template-columns:1fr;padding:30px 22px 42px;gap:28px;}.ello-reference-footer__search-column{grid-column:auto;max-width:none;}.ello-reference-footer__desktop-break{display:none;}}


/* About Us page */
.ello-about-page{background:#fff;color:#24364a;}
.ello-about-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;background:#f6f3ef;}
.ello-about-hero__media{min-height:420px;height:100%;overflow:hidden;}
.ello-about-hero__media img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover;}
.ello-about-hero__copy{padding:clamp(2.5rem,6vw,8rem);max-width:720px;}
.ello-about-hero__copy h1{margin:0 0 2rem;color:#203f70;font-size:clamp(2.8rem,4.5vw,5.6rem);line-height:1.05;font-weight:500;}
.ello-about-hero__copy p{margin:0;max-width:540px;color:#526b84;font-size:clamp(1.6rem,1.8vw,2.1rem);line-height:1.7;}
.ello-about-values{padding:4rem 1.5rem 5rem;background:#fff;}
.ello-about-section-heading{text-align:center;margin:0 auto 3rem;}
.ello-about-section-heading h2{margin:0;color:#203f70;font-size:clamp(1.7rem,2vw,2.4rem);line-height:1.3;letter-spacing:.08em;text-transform:uppercase;font-weight:600;}
.ello-about-values__grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.4rem;}
.ello-about-value{text-align:center;}
.ello-about-value img{display:block;width:100%;aspect-ratio:1;object-fit:cover;margin:0 auto 2rem;}
.ello-about-value h3{margin:0 0 1rem;color:#203f70;font-size:clamp(1.8rem,2vw,2.4rem);line-height:1.25;font-weight:500;}
.ello-about-value p{max-width:340px;margin:0 auto;color:#526b84;font-size:1.6rem;line-height:1.65;}
.ello-about-team{max-width:1180px;margin:0 auto;padding:5rem 1.5rem 8rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(3rem,8vw,9rem);}
.ello-about-team__media img{display:block;width:100%;aspect-ratio:1;object-fit:cover;}
.ello-about-team__copy{max-width:430px;}
.ello-about-team__copy h2{margin:0 0 2.4rem;color:#203f70;font-size:clamp(2.4rem,3vw,3.6rem);line-height:1.15;font-weight:500;}
.ello-about-team__copy p{margin:0 0 2.4rem;color:#526b84;font-size:1.7rem;line-height:1.75;}
.ello-about-team__copy p:last-child{margin-bottom:0;}
@media(max-width:767px){.ello-about-hero{display:flex;flex-direction:column;}.ello-about-hero__media,.ello-about-hero__media img{min-height:0;height:auto;aspect-ratio:1.5;}.ello-about-hero__copy{padding:3.6rem 2rem 4.5rem;}.ello-about-values{padding:3.5rem 2rem 4.5rem;}.ello-about-values__grid{grid-template-columns:1fr;gap:4rem;}.ello-about-value img{max-width:420px;}.ello-about-team{grid-template-columns:1fr;padding:4.5rem 2rem 6rem;gap:3.2rem;}.ello-about-team__copy{max-width:none;}.ello-about-team__copy p{font-size:1.6rem;}}

/* Policy and support pages */
.ello-policy-page{background:#fff;color:#24364a;padding:clamp(3rem,7vw,7rem) 1.5rem;}
.ello-policy-page__inner{max-width:820px;margin:0 auto;}
.ello-policy-page__eyebrow{margin:0 0 1rem;color:#58718d;font-size:1.4rem;letter-spacing:.12em;text-transform:uppercase;}
.ello-policy-page h1{margin:0 0 2rem;color:#203f70;font-size:clamp(3rem,5vw,5.6rem);font-weight:500;line-height:1.1;}
.ello-policy-page__lead{margin:0 0 4rem;color:#526b84;font-size:clamp(1.7rem,2vw,2.2rem);line-height:1.6;}
.ello-policy-page__content{max-width:680px;color:#526b84;font-size:1.7rem;line-height:1.75;}
.ello-policy-page__content h2{margin:2.8rem 0 1rem;color:#203f70;font-size:2.2rem;font-weight:500;}
.ello-policy-page__content p{margin:0 0 1.2rem;}
