/* Quiet Compass section widgets. Defaults live here; Elementor Style tab overrides them. */
[class*="elementor-widget-qc_"]{margin-bottom:0!important}
[class*="elementor-widget-qc_"] .elementor-widget-container{margin:0}
.qc-section{position:relative}
.qc-sec__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 2rem;margin-bottom:clamp(1.75rem,4vw,2.75rem)}
.qc-sec__title{margin:0 0 .35em;font-family:var(--qc-serif);font-weight:500;font-size:clamp(1.8rem,3.4vw,2.5rem);line-height:1.15;letter-spacing:-.015em;color:var(--qc-ink)}
.qc-sec__intro{max-width:56ch;margin:0;color:var(--qc-ink-soft);font-size:1.1rem}

/* Hero */
.qc-hero{padding-block:clamp(2rem,5vw,4rem) clamp(3rem,7vw,6rem)}
.qc-hero__grid{display:grid;align-items:center;gap:clamp(1.5rem,5vw,4rem);grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.qc-hero__title{margin:0 0 .45em;font-family:var(--qc-serif);font-weight:500;font-size:clamp(2.6rem,6.2vw,4.6rem);line-height:1.04;letter-spacing:-.025em;color:var(--qc-ink)}
.qc-hero__sub{max-width:34em;margin:0 0 1.8rem;color:var(--qc-ink-soft);font-size:clamp(1.1rem,1.8vw,1.3rem);line-height:1.55}
.qc-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.75rem}
.qc-hero__art{display:flex;justify-content:center}
.qc-hero__img{display:block;width:100%;max-width:520px;height:auto}
@media (max-width:820px){.qc-hero__grid{grid-template-columns:1fr}.qc-hero__art{order:-1}.qc-hero__img{max-width:300px}}

/* Start here: three tiles with a gentle staggered rhythm */
.qc-start__grid{display:grid;gap:clamp(1.25rem,2.4vw,2rem);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.qc-topic{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;min-height:250px;padding:1.9rem 1.8rem;border-radius:40px 40px 40px 12px;background:var(--qc-sage-wash);color:var(--qc-ink);text-decoration:none}
.qc-topic:nth-child(2){margin-top:2rem;background:var(--qc-sand-wash);border-radius:40px 40px 12px 40px}
.qc-topic:nth-child(3){background:var(--qc-sky-wash)}
.qc-topic .qc-tag{background:rgba(255,255,255,.7)}
.qc-topic__title{margin:0;font:500 1.55rem/1.2 var(--qc-serif);letter-spacing:-.01em}
.qc-topic__text{margin:0;color:var(--qc-ink-soft)}
.qc-topic:hover .qc-topic__title{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.2em}
.qc-topic:focus-visible{outline:3px solid var(--qc-sage-deep);outline-offset:3px}
@media (max-width:900px){.qc-start__grid{grid-template-columns:1fr}.qc-topic:nth-child(2){margin-top:0}.qc-topic{min-height:0}}

/* Newsletter */
.qc-news__panel{display:grid;align-items:center;gap:2rem 3rem;grid-template-columns:1.1fr 1fr;padding:clamp(2rem,5vw,3.5rem);border-radius:48px 48px 48px 14px;background:var(--qc-sage-wash)}
.qc-news__title{margin:0 0 .4em;font-family:var(--qc-serif);font-weight:500;font-size:clamp(1.7rem,3.2vw,2.3rem);line-height:1.15;color:var(--qc-ink)}
.qc-news__text{margin:0;color:var(--qc-ink-soft);max-width:44ch}
.qc-news__small{margin:.75rem 0 0;color:var(--qc-ink-soft);font-size:.9rem}
@media (max-width:820px){.qc-news__panel{grid-template-columns:1fr}}

/* About teaser + story */
.qc-about__grid,.qc-story__grid{display:grid;align-items:center;gap:clamp(1.75rem,5vw,4.5rem);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.qc-about__photo,.qc-story__photo{display:flex;justify-content:center}
.qc-about__img,.qc-story__img{display:block;width:100%;max-width:420px;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:46% 54% 52% 48%/38% 42% 58% 62%;background:var(--qc-sage-wash)}
.qc-about__title,.qc-story__title{margin:0 0 .5em;font-family:var(--qc-serif);font-weight:500;font-size:clamp(1.9rem,3.6vw,2.7rem);line-height:1.12;letter-spacing:-.015em;color:var(--qc-ink)}
.qc-about__text{margin:0 0 1.5rem;max-width:52ch;color:var(--qc-ink-soft);font-size:1.12rem}
.qc-story__body{max-width:58ch;font-size:1.15rem;line-height:1.7}
.qc-story__sign{margin:1.2rem 0 0;font:italic 500 1.4rem var(--qc-serif);color:var(--qc-sage-deep)}
.qc-story.is-flipped .qc-story__photo{order:2}
@media (max-width:820px){.qc-about__grid,.qc-story__grid{grid-template-columns:1fr}.qc-story.is-flipped .qc-story__photo{order:0}.qc-about__img,.qc-story__img{max-width:300px}}

/* Values */
.qc-values__grid{display:grid;gap:clamp(1.5rem,3vw,2.5rem);grid-template-columns:repeat(3,minmax(0,1fr))}
.qc-value{padding:0}
.qc-value__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:1rem;border-radius:50% 50% 50% 12px;background:var(--qc-sage-wash);color:var(--qc-sage-deep)}
.qc-value__icon svg{width:28px;height:28px}
.qc-value__title{margin:0 0 .4em;font:500 1.4rem/1.2 var(--qc-serif);color:var(--qc-ink)}
.qc-value__text{margin:0;color:var(--qc-ink-soft)}
@media (max-width:820px){.qc-values__grid{grid-template-columns:1fr}}

/* What to expect */
.qc-expect__list{display:grid;gap:1.5rem clamp(1.5rem,4vw,3.5rem);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none}
.qc-expect__item{padding-left:1.4rem;border-left:3px solid var(--qc-sage)}
.qc-expect__title{margin:0 0 .3em;font:500 1.35rem/1.25 var(--qc-serif);color:var(--qc-ink)}
.qc-expect__text{margin:0;color:var(--qc-ink-soft)}
@media (max-width:700px){.qc-expect__list{grid-template-columns:1fr}}

/* Reader notes */
.qc-notes__grid{display:grid;gap:clamp(1.25rem,2.4vw,2rem);grid-template-columns:repeat(3,minmax(0,1fr))}
.qc-note{margin:0;padding:1.8rem;border-radius:28px 28px 28px 8px;background:var(--qc-white);border:1px solid var(--qc-line)}
.qc-note__quote{margin:0 0 1rem}.qc-note__quote p{margin:0;font:400 1.15rem/1.55 var(--qc-serif);color:var(--qc-ink)}
.qc-note__who{color:var(--qc-ink-soft);font-size:.95rem;font-weight:600}
@media (max-width:900px){.qc-notes__grid{grid-template-columns:1fr}}

/* Contact */
.qc-contact__grid{display:grid;align-items:start;gap:clamp(2rem,5vw,4.5rem);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.qc-contact__title{margin:0 0 .5em;font-family:var(--qc-serif);font-weight:500;font-size:clamp(2.2rem,4.6vw,3.4rem);line-height:1.08;letter-spacing:-.02em;color:var(--qc-ink)}
.qc-contact__text{max-width:44ch;margin:0 0 1rem;color:var(--qc-ink-soft);font-size:1.15rem}
.qc-contact__reply{margin:0 0 1.5rem;padding-left:1rem;border-left:3px solid var(--qc-honey);color:var(--qc-ink);font-weight:500}
.qc-contact__form{padding:clamp(1.5rem,4vw,2.5rem);border-radius:36px 36px 36px 12px;background:var(--qc-white);border:1px solid var(--qc-line)}
@media (max-width:820px){.qc-contact__grid{grid-template-columns:1fr}}
