/* danaemaniatis.com. Built against practice/website/design-spec.md (signed off 4 Oct 2026). Change the spec first, then this file. */

/* Typefaces, served from this site. Fraunces and Work Sans, SIL Open Font License. */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 600;font-display:swap;src:url(../fonts/fraunces-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400 600;font-display:swap;src:url(../fonts/fraunces-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/work-sans-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/work-sans-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/work-sans-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/work-sans-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/work-sans-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/work-sans-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* Layout: a short homepage on a cream ground. Hero, proof line, the Reef band of four ways in (the only colour mass), two subject areas, writing, about, enquiry. Light only, by decision. */
:root{
  --ground:#F7F1E8;      /* page */
  --paper:#FCF9F3;       /* form card */
  --foot:#EDE4D5;        /* footer ground */
  --ink:#0B2A3C;         /* all text, 13.3 on ground */
  --muted:#4B5D68;       /* secondary text, 6.1 on ground */
  --turq:#0FA3A3;        /* button fill and bar only, never text */
  --teal:#0A6B6B;        /* labels and coloured text, 5.6 on ground */
  --reef:linear-gradient(100deg,#9CC9E7 0%,#7DDFD8 50%,#7FD3B5 100%); /* the one tinted band */
  --hair:rgba(11,42,60,.14);
  --field:#7C8A93;       /* input borders, 3.4 */
  --display:'Fraunces',Georgia,'Times New Roman',serif;
  --body:'Work Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px;--s6:96px;
  --measure:64ch;
  color-scheme:light;
}
*{box-sizing:border-box}
body{margin:0}
body{background:var(--ground);color:var(--ink);font:400 17px/1.6 var(--body);}
a{color:inherit}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:2px}
.wrap{max-width:1160px;margin:0 auto;padding-inline:clamp(16px,4vw,40px);}

/* header */
header.site{border-bottom:5px solid var(--turq);}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s2) var(--s3);padding-block:20px;}
.wordmark{display:grid;gap:3px;text-decoration:none;}
.wordmark .name{font:500 23px/1 var(--display);letter-spacing:.005em;font-variation-settings:"opsz" 36;}
.wordmark .name .dr{font-size:.62em;letter-spacing:.14em;text-transform:uppercase;font-family:var(--body);font-weight:600;color:var(--teal);vertical-align:.32em;margin-right:6px}
.wordmark .desc{font:500 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);}
nav.main{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;font:500 14px/1 var(--body);}
nav.main a{text-decoration:none;padding-block:6px;border-bottom:1px solid transparent}
nav.main a:hover{border-bottom-color:var(--ink)}

/* buttons: one primary style everywhere, one text link */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--turq);color:var(--ink);font:600 15px/1 var(--body);text-decoration:none;border:0;border-radius:999px;padding:13px 14px 13px 20px;cursor:pointer;}
.btn i{font-style:normal;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--ink);color:var(--turq);font-size:13px;transition:transform .15s ease}
.btn:hover i{transform:translateX(3px)}
.btn.small{font-size:13.5px;padding:9px 10px 9px 15px;}
.btn.small i{width:18px;height:18px;font-size:11px}
nav.main a.btn{border-bottom:0;padding-block:9px}
.textlink{font:500 15px/1 var(--body);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}

/* shared type */
.label{font:600 11.5px/1.3 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--teal);}
h1,h2,h3{font-family:var(--display);font-weight:500;letter-spacing:-.012em;text-wrap:balance;margin:0}
h2{font-size:clamp(26px,3vw,34px);line-height:1.15}
h3{font-size:21px;line-height:1.25}
p{margin:0}
.flag{font:500 12px/1 var(--body);color:var(--teal);border:1px solid currentColor;border-radius:3px;padding:2px 5px;white-space:nowrap;vertical-align:1px;margin-left:4px}

/* hero */
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;padding-block:clamp(40px,6vw,80px);}
.hero .text{display:grid;gap:var(--s3);min-width:0}
.hero h1{font-size:clamp(34px,4.6vw,52px);line-height:1.08;max-width:17ch;}
.hero .stand{color:var(--muted);max-width:52ch;font-size:18px}
.ctas{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3);}

/* four ways in: the Reef band */
.ways{background:var(--reef);}
.ways .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));}
.way{display:grid;grid-template-rows:auto auto 1fr auto;gap:10px;padding:var(--s4) var(--s3) var(--s3);text-decoration:none;color:var(--ink);border-left:1px solid rgba(11,42,60,.16);min-width:0;transition:background .15s ease}
.way:first-child{border-left:0;padding-left:0}
.way:hover{background:rgba(252,249,243,.28)}
.way .k{font:600 11.5px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;}
.way h3{font-size:20px}
.way p{font-size:15px;line-height:1.5}
.way .go{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ink);color:var(--ground);font-size:14px;margin-top:6px;transition:transform .15s ease}
.way:hover .go{transform:translateX(4px)}

/* sections */
section.block .wrap{padding-block:clamp(56px,7vw,96px);}
section.block + section.block .wrap{border-top:1px solid var(--hair);}
.head{display:grid;gap:12px;margin-bottom:var(--s4);max-width:var(--measure)}
.cols{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.prose{display:grid;gap:var(--s3);max-width:var(--measure)}
.outcome{font:400 22px/1.4 var(--display);border-left:3px solid var(--turq);padding-left:var(--s3);}
.aside{display:grid;gap:var(--s3);}
.aside h4{margin:0 0 6px;font:600 13px/1.3 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.next h4{margin:0 0 8px;font:600 13px/1.3 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.next p{margin:0}
ul.plain{margin:0;padding:0;list-style:none;display:grid;gap:8px}
ul.plain li{padding-left:18px;position:relative}
ul.plain li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:2px;background:var(--teal)}

/* entry offer */
.entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--s3);align-items:center;background:var(--paper);border:1px solid var(--hair);border-radius:4px;padding:var(--s4);margin-top:var(--s5)}
.entry .t{display:grid;gap:10px;max-width:60ch}
.price{font:500 14px/1 var(--body);color:var(--muted)}

/* publications */
ol.pubs{list-style:none;margin:0;padding:0;display:grid;max-width:880px}
ol.pubs li{display:grid;grid-template-columns:72px minmax(0,1fr);gap:var(--s3);padding-block:var(--s3);border-top:1px solid var(--hair)}
ol.pubs li:last-child{border-bottom:1px solid var(--hair)}
.yr{font:500 15px/1.5 var(--body);color:var(--teal);font-variant-numeric:tabular-nums}
.cite .title{font:500 19px/1.35 var(--display);}
.cite .meta{color:var(--muted);font-size:15px;margin-top:4px}

/* enquiry form */
.formcard{background:var(--paper);border:1px solid var(--hair);border-radius:4px;padding:clamp(24px,4vw,48px);display:grid;gap:var(--s3);max-width:880px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}
.field{display:grid;gap:8px;min-width:0}
.field label{font:600 14px/1.3 var(--body)}
.field small{color:var(--muted);font-size:13.5px;font-weight:400}
.field input,.field textarea,.field select{font:400 16px/1.4 var(--body);color:var(--ink);background:#fff;border:1px solid var(--field);border-radius:4px;padding:11px 12px;width:100%}
.field textarea{min-height:96px;resize:vertical}
.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{outline:2px solid var(--teal);outline-offset:1px}
.formfoot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3)}
.sent{color:var(--teal);font-weight:500}

/* footer */
footer.site{background:var(--foot);border-top:5px solid var(--turq);}
footer.site .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:var(--s4);padding-block:var(--s5) var(--s4);}
footer.site h4{margin:0 0 10px;font:600 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
footer.site p,footer.site li{font-size:15px}
footer.site .legal{grid-column:1/-1;border-top:1px solid var(--hair);padding-top:var(--s3);color:var(--muted);font-size:13.5px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
.select-text{user-select:all}

@media (max-width:900px){
  .ways .wrap{grid-template-columns:repeat(2,minmax(0,1fr));}
  .way:nth-child(3){border-left:0;padding-left:0}
  .way:nth-child(n+3){border-top:1px solid rgba(11,42,60,.16)}
  .cols{grid-template-columns:1fr}
}
@media (max-width:720px){
  .hero .wrap{grid-template-columns:1fr}
  .entry{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  footer.site .wrap{grid-template-columns:1fr}
}
@media (max-width:520px){
  .ways .wrap{grid-template-columns:1fr}
  .way,.way:nth-child(3){border-left:0;padding-left:0;padding-right:0}
  .way+.way{border-top:1px solid rgba(11,42,60,.16)}
  ol.pubs li{grid-template-columns:1fr;gap:4px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

figure{margin:0}
.shot,.wide{display:grid;gap:10px;min-width:0}
.shot img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:3px;display:block}
.wide{margin-bottom:var(--s5)}
.wide img{width:100%;height:auto;aspect-ratio:2.2/1;object-fit:cover;border-radius:3px;display:block}
figcaption{font:400 13px/1.45 var(--body);color:var(--muted)}
@media (max-width:720px){.shot img{aspect-ratio:4/3}.wide img{aspect-ratio:3/2}}

.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3)}
.gallery figure{display:grid;gap:8px;min-width:0}
.gallery img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:3px;display:block}
.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:clamp(28px,5vw,72px);align-items:center}
.about img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:3px;display:block}
@media (max-width:900px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.about{grid-template-columns:1fr}.about img{max-width:420px}}

/* v4: proof line under the hero */
.proof .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s3);padding-block:var(--s3) var(--s4);border-top:1px solid var(--hair)}
.proof div{display:grid;gap:6px;align-content:start;min-width:0}
.proof p{font-size:15px;line-height:1.45}

/* v4: phone header. Links fold into a menu; wordmark and Enquire stay on one row */
details.menu{display:none}
details.menu summary{list-style:none;cursor:pointer;font:600 14px/1 var(--body);padding:10px 14px;border:1px solid var(--field);border-radius:999px}
details.menu summary::-webkit-details-marker{display:none}
details.menu[open] summary{background:var(--paper)}
.menulinks{display:grid;gap:0;padding-top:var(--s2)}
.menulinks a{text-decoration:none;font:500 17px/1 var(--body);padding:14px 0;border-top:1px solid var(--hair)}

/* v5 (6 Oct): three subject areas side by side; one column below 900px */
.areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,40px)}
@media (max-width:900px){.areas{grid-template-columns:1fr}}
.area{display:grid;gap:var(--s2);align-content:start;min-width:0}
.area img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:3px;display:block}
.area h3{font-size:24px}
.area .covers{color:var(--muted);font-size:15px}
.strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2);margin-top:var(--s4)}
.strip figure{display:grid;gap:6px;min-width:0}
.strip img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:3px;display:block}
.cite a{text-decoration:none;border-bottom:1px solid var(--hair)}
.cite a:hover{border-bottom-color:var(--ink)}
.privacy{color:var(--muted);font-size:13.5px}

@media (max-width:900px){.proof .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){
  nav.main a:not(.btn){display:none}
  details.menu{display:block}
  header.site .wrap{padding-block:14px;gap:10px 12px}
  .wordmark .name{font-size:20px}
  .wordmark .desc{font-size:9.5px;letter-spacing:.12em}
  .menurow{flex-basis:100%}
  .hero .wrap{padding-block:28px 40px}
  .hero .text{gap:var(--s2)}
  .hero .stand{font-size:17px}
  .areas{grid-template-columns:1fr}
}
@media (max-width:520px){.proof .wrap{grid-template-columns:1fr;gap:var(--s2)}}

/* skip link */
.skip{position:absolute;left:-9999px;top:0;background:var(--paper);color:var(--ink);padding:10px 14px;font:600 14px/1 var(--body);z-index:10}
.skip:focus{left:8px;top:8px}

/* inner pages */
.draftbar{background:var(--paper);border-bottom:1px solid var(--hair);color:var(--teal);font:500 13px/1.4 var(--body)}
.draftbar .wrap{padding-block:8px}
h1.pagetitle{font-size:clamp(30px,4vw,44px);line-height:1.12;max-width:22ch}
.prose h2{font-size:clamp(22px,2.4vw,26px);line-height:1.2}
.pagecta{margin-top:var(--s1)}
.note{color:var(--muted);font-size:15px;margin-top:var(--s3);max-width:var(--measure)}
.head .note{margin-top:0}
nav.main a[aria-current="page"]{border-bottom-color:var(--turq);border-bottom-width:2px}
.aside a,.cite .meta a{text-decoration:none;border-bottom:1px solid var(--hair)}
.aside a:hover{border-bottom-color:var(--ink)}
ol.pubs li{grid-template-columns:112px minmax(0,1fr)}
@media (max-width:520px){ol.pubs li{grid-template-columns:1fr}}

.about.top{align-items:start}
.about.top img{position:sticky;top:var(--s3)}
@media (max-width:720px){.about.top img{position:static}}

.outcome.quote{margin-top:var(--s4);max-width:var(--measure)}
